Git高级命令
修改分支名
场景:将分支名称为 oldbranch 改为 newbranch
步骤:
1、将本地分支oldbranch切一个分支到本地:git branch -m oldbranch newbranch
2、删除远程分支:git push --delete origin oldbranch
3、将本地新分支推送到远程:git push origin newbranch
合并分支提交记录:rebase
场景1:同一个分支,将多个commit提交记录合并
1、使用 git log 命令,查看当前分支所有提交记录,然后复制最早的那个commit的上一次的commitId(如下面红框的)
2、使用 git rebase -i [commitId]:
3、按下面命令的提示修改上面的pick。
4、修改完成后,需要进行保存,依次按住Ctrl+O(写入)、Enter(确认)、Ctrl+X(离开)
5、这样就完成了rebase操作,最后把提交记录push到origin即可。
场景2:将本地分支A(或者是远端分支)的提交记录合并到当前分支B
1、使用 git checkout 切到分支A,然后使用 git pull 拉取最新代码
2、使用 git checkout 切回到当前分支B,然后使用 git rebase [分支A],即可rebase到当前分支B
3、如果第2步报错了,需要手动解决冲突
将指定的提交应用于其他分支:cherry-pick
场景:本地的分支A没有push到远端,但是分支B需要依赖分支A
在分支B上执行:
git cherry-pick <分支A>
同步远程分支
场景:删除了远程分支,但是自己本地记录的远程分支还在,需要同步删除
在当前分支执行:
git remote update origin --prune
注意:必须带--prune,否则跟 git fetch 等价。
知识改变世界