本文转载自微信公众号「UP技术控」,作者conan5566。转载本文请联系UP技术控公众号。
介绍
给定一个或多个现有提交,应用每个引入的更改,并为每个记录一个新的提交。这要求您的工作树是干净的(HEAD提交没有任何修改)。
如果不清楚如何应用更改,则会发生以下情况:
- 当前分支和HEAD指针停留在成功完成的最后一次提交上。
- 该CHERRY_PICK_HEAD裁判在设置点提交介绍了这是难以适用的变化。
- 干净应用更改的路径在索引文件和工作树中均被更新。
- 对于冲突的路径,索引文件最多记录三个版本,如git-merge [1]的“ TRUE MERGE”部分所述 。工作树文件将包含对冲突的描述,并用通常的冲突标记<<<<<<<和括起来>>>>>>>。
- 没有其他修改。
方法
首先,我们需要切换到想要合并的分支上去,然后执行git fetch同步一下远程的提交记录。(注意切换分支不要 create New Branch)
2.然后,选择右键菜单中的show log,查看提交日志,点击这里切换到我们要合并的commit的那个分支的日志。
3.这时,可以在远程pre分支的提交记录上看到需要合并的那次commit。
4.在这次commit上右键弹出菜单,选择Cherry Pick this commit...
5.这时就会弹出cherry pick的界面,选中需要pick的那次commit,点击contimue,就会把这次commit合并并且提交到到本地的dev分支上了。这里也可以查看commit的文件和msg,如果有冲突也要解决冲突。
6.从新pull代码,这里我们可以看到本地的分支已经指向了合并进来的最新一次的commit。
最后,我们执行一下git pull、git push,将其同步到远程分支上就ok啦。(版本不同可能提交方式不同)