Git 命令记录
date: 2015-01-07 21:53 status: public title: ‘Git 命令记录’ tags: git —
从git管理中删除
git rm –cached –force app/app/app.iml
修改提交用户名和email
git commit –amend –author=’Your Name you@example.com’
批量修改修改所有commit的Author邮箱
git filter-branch –env-filter ‘export GIT_AUTHOR_EMAIL=new_author_email’ – git filter-branch –env-filter ‘export GIT_AUTHOR_NAME=new_author_name’ –
除了GIT_AUTHOR_EMAIL, 还有GIT_AUTHOR_NAME, GIT_COMMITTER_EMAIL, GIT_COMMITTER_NAME等参数可以修改.
git 批量修改author
git filter-branch -f –env-filter “GIT_AUTHOR_NAME=’usename’; GIT_AUTHOR_EMAIL=’email’;” HEAD
输入amend命令重置用户信息
git commit –amend –reset-author
git status显示中文和解决中文乱码
git config –global core.quotepath false
自定义版本号
$ git tag v0.1 dfb02 push不上去,提示unpacker error
使用带参数的git push –no-thin命令成功。 –[no-]thin These options are passed to git-send-pack(1). A thin transfer significantly reduces the amount of sent data when the sender and receiver share many of the same objects in common. The default is –thin.
打patch
通常打patch 的流程:
- $ git am PATCH 如果有冲突不能直接合入需要继续执行下面的操作
- $ git apply PATCH –reject (注:会在有冲突的文件目录下面生成相应的.rej文件)
- $ edit edit dit (注:根据.rej文件手动解决所有冲突,即参照.rej文件手动修改冲突的文件)
- $ git add FIXED_FILES
- $ git am –resolved
带目录参数 –directory=***
指定合入patch 的目录 git am 0001-app-add-camera-filter.patch –directory=packages/apps/SnapdragonCamera/
-k 参数
git am -k *.patch 会保留patch 中形如[] 括号和括号内的信息,比如[BugFix]Fix NPE,不带-k 参数的话打入patch 后commit message 只有Fix NPE。