git如何合并某个分支的某次提交(cherry-pick)
作者:华妃
这篇文章主要介绍了git如何合并某个分支的某次提交(cherry-pick)问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
为什么会有多个分支
一般项目在开发阶段,都会创建多个分支,用于不同开发阶段的版本发布
如:master、dev等,之所以会有这种多分支情况,就是项目在不同的开发阶段,新的业务会对之前业务造成影响,所以建多个分支用来发布不同的迭代版本,直至一个迭代完成测试、上线。
如何将某个分支的某次提交合到一个分支上?
将某个分支的一个(或多个)提交合并到另一个分支,注意不是merge,merge是全部合并、而我们要的是可选择的,就要用到 Cherry pick
demo
1、比如我现在有两个分支master和tenant
在tenant分支上有多次提交,但是我只想提交某两次在master分支。
2、在项目目录下打开git的黑窗口
3、查看 tenant分支 提交版本号记录
找到我们要合并的两次版本号。
git log tenant
4、如果提交记录比较长
想要退出,按“q”,否则会一直加载日志。
5、切换到待合并分支 master
git checkout master
6、执行合并
git cherry-pick 6b4182a807ef4e30b7da3ea9bf7211b4de9a7b6f
7、推到远程
git push
这个时候,可以看到主分支的提交记录已经包括了我们合并的两次提交。
最后,需要注意的是,
合并某次提交,并不是合并某次提交修改的内容,而且会将某次提交时的文件合并到分支。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。