Git常用命令
协作开发时一些常用的git命令。
Git 常用命令
rebase
git变基到[branch]
git rebase [branch]
git变基后合并冲突
git rebase --cotinue
合并代码前先进行变基操作(避免多出一条和分支修改无关的commit)
git pull --rebase
git变基修改多次提交
git rebase -i [commit-id]
或 git rebase -i HEAD~n
git取消变基
git rebase --abort
reset
git重置提交到[commit-id],并强制推送
git reset --hard [commit-id]]
git push -f
revert
git回退到某一版本并提交
git revert [commit-id]
git commit -m [commit-id]
others
git获取远程分支内容
git fetch -a origin/[branch]
本地remote分支和远程同步
git remote prune origin
将本次修改的内容合并到上一次提交中,并强制推送
git commit -a --amend
git push -f
Git 批处理
filter-branch
本地git中的用户名和邮箱配置错误,会导致远程仓库提交记录中无法正确显示作者信息(用户名、头像等),还会导致用户贡献无法统计。
如果只是更正单条作者信息,使用rebase即可。
git rebase -i -p [commit-id]
git commit --amend --author="New Name Value <correct@example.com>" --no-edit
git rebase --continue
若要重写所有历史commit中的授权用户和提交用户,可以使用git filter-branch
编写批处理脚本,
1 | # If you see bash tips "A previous backup already exists in refs/original/", |
在git仓库根目录下运行后,使用git push -f
强制推送即可。