返回顶部

IDEA中的Cherry-Pick的使用及分支提交记录的合并

什么是 cherry-pick

https://blog.csdn.net/GBS20200720/article/details/123840359

前言
这里的cherry-pick指的是git的命令,cherry-pick

这个命令的作用就是把指定的commit,拉到一个新的分支上。

图示
比如此时分支情况如下:

 

 

这幅图中,每个圆圈代表一次commit

一条线是一个分支。

比如c2,c3,这是两次提交,在同一个分支上。

此时需求是:要把绿色分支的C3,蓝色分支的C5,紫色分支的C7合到一条新的分支上。

此时就需要cherry-pick命令了。

首先切到master分支,然后输入

git cherry-pick C3 C5 C7

此时,分支图示就变成了:

 

 

 

这就是cherry-pick的作用
原文链接:https://blog.csdn.net/GBS20200720/article/details/123840359

-------------------------------

使用场景:在某个分支提交了公共功能的代码,其他分支也需要,但是不能够把分支进行合并。
Cherry-Pick的作用:假设当前所在分支为B,可以在Version Control的Log中选择在A分支单个commit或者多个commit的内容,会将选中的内容拉到B分支重新进行commit,之后记得push上去,就完成了公共功能代码的拉取。

原文链接:https://blog.csdn.net/yangaaaw/article/details/114581407

 

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

使用idea cherry-pick 合使用场景 :在公司的项目中可能存在多个分支有时候就需要将其中的两个分支合并;

合并分支有两种操作:

一种情况是你需要将你分支的所有代码变动,此时可以采用分支合并
merge
另一种情况,只需要提交几个改动,不需要全部合并(有些情况下整个分支合并冲突太多处理起来过于麻烦)

今天在公司学到了使用idea的cherry-pick合并部分分支,在此记录!

情景: 此时我有两个分支 分别为 test分支和hy分支,现要将hy分支的代码合并到test分支上

首先我们要将我们自己写的hy分支的代码提交到库中
然后切换到test 分支中


 
image.png

通过showHistory 查看版本信息
在showHistory中的branch中查看hy分支的代码

 
 

 

可以通过查看每次提交的代码来选择合并
对有冲突的代码手动选择解决 最后再提交到test库中
完事

提交代码发生冲突时


 
 

最左边的为你本次提交的代码
中间为base 你之前拉下来的代码
最右边的为当前服务器有改动的代码

可以选择 Accept Left(只保存提交我的改动,可能会覆盖别人的代码)
可以点击 ">>>" 将变动的代码合并到中间的,可以保存双方的代码
点击 Accept Right 只保存服务器上的代码 放弃自己对该类操作的提交

链接:https://www.jianshu.com/p/b0ede5db5a4e





 

posted @ 2022-10-31 16:54  fen斗  阅读(3088)  评论(0编辑  收藏  举报