多人开发一个项目,即使分模块开发也难免会有代码影响,特别是如果你再开发新的功能,其他人在改bug或者是新的功能开发完成已经合到了总的分支,这个时候你自己的代码开发完成直接merge将会是一个噩梦。 太久没有同步代码,发现会有很多冲突,解决冲突处理不当可能会导致整个项目无法运行或者出现其他bug。下面介绍一个好的办法:cherry-pick
以合并dev代码为例,自己开发分支:feature/001
tig feature/001
tig 分支名可以查看该分支的提交记录,找到自己提交的记录复制commit_id
先拉一下最新的dev分支
git pull dev
git checkout -b rebase/dev
git cherry-pick commit_id
如果别人没有动到自己改动的地方那么就不会有冲突,即使中间遇到冲突但是每次都会很少,解决起来也很方便。冲突解决完之后执行下面的操作
git add .
git cherry-pick --continue
此时一个commit已经完成,可以继续进行下一个commit知道自己功能开发的最后一个commit,之后再push merge即可。
tig安装:— brew install tig