git log 窗口 参考 source tree
cherry pick, merge
conflict
merge conflict 冲突 <<<<<<< HEAD
<<<<<<< HEAD
本地代码
=======
拉下来的代码
>>>>>>>
<<<<<<< HEAD
import java.util.List;
=======
>>>>>>> 639f7fc (feat: add xxxx)
import java.util.Map;
}
cherry pick 功能
情景一
在同一个分支
,A提交了一段代码
,B也提交了一段代码
,如果合并的到master
的时候只需要A的代码
,就用上了这个功能,只选择某一个提交合并,而不是全部合并
想要合并到的分支:0
自己开发功能的分支,想要合并到 0 的分支:1
操作:
切换到0
分支,git log窗口,筛选 all
,点击 1 分支上开发功能的提交记录
,右键 cherry pick
,即可将选中的提交记录合并到 0 分支
情景二
你从 origin/dev/3.0
checkout
出一个自己的分支 lhf/dev/3.0
,然后你开发到第二天,发现 origin/dev/3.0 上有人提交了新的 commit
,你的分支上也有 自己的commit
然后,想要把 origin/dev/3.0 分支
上比自己 checkout 时的 dev
update 的部分
,更新到自己的分支
将分支处于自己的分支 lhf/dev/3.0 上
,git log 面板
选择 origin/dev/3.0
,选中 旧的 dev update 的 commit
,右键 cherry pick