使用 cherry-pick,可以从其他分支复制指定的提交,然后导入到现在的分支。
主要使用的场合:
- 把弄错分支的提交移动到正确的地方
- 把其他分支的提交添加到现在的分支
例如,我们想把 learn-cherry-pick 这个分支上的第二个提交提取出来,然后添加到 master 上。
首先从图右部分可以找到我们想提取 commit 的 commit id 为 c3f0d9a
,在 master 分支上执行 cherry-pick
操作如下:
➜ git cherry-pick c3f0d9a[master 573066e] add a new line Date: Sun Jan 14 18:50:20 2018 +0800 1 file changed, 1 insertion(+)
结果:
cherry-pick 过程中也是可能会产生冲突的,解决冲突后先 add,然后使用 git cherry-pick --continue
。
git cherry-pick --abort