git cherry-pick命令执行多次,会怎样?以下通过idea进行演示,先总结结论:

1、cherry-pick无冲突时,仅能执行一次此命令,第二次cherry-pick会直接卡住

2、cherry-pick有冲突时,可执行多次此命令,每次都是拿各分支最新代码让人合并,每次执行都要解决冲突

下面通过idea实际操作,验证以上结论。我们选定dev分支、st分支,选定hjtest1.txt、hjtest2.txt文件进行分支冲突和cherry-pick操作。

首先先看idea上cherrypick该怎么操做

下图是把dev分支,选中一条代码合并到st上,即cherry-pick一条到st上。单击这条提交记录->右键Cherry-Pick即可

上图是无冲突的情况,可看到左下角直接提示:Cherry-pick successful。之后我们进行正常push代码即可,此条提交记录就合到st上了。

我们再次进行右键Cherry-Pick,即验证无冲突情况的多次Cherry-Pick。此时idea报错,如下:

至此,情况1验证完毕

对于情况2,我们先制造分支冲突,制造完分支冲突后Cherry-pick效果如下图所示:

上图中,左侧为st分支,右侧为dev分支,次Cherry-Pick是为了将dev代码合并至st。即dev为源头分支,st为目标分支,我们将本地分支切为st分支。

我们进行冲突合并,合并后如下图所示:

这里插一下,如果我们某次 Cherry-Pick不想要了,可通过Abort Cherry-Pick取消:

之后我们push掉合并后的代码(如果没push,那当前是处于Cherry-picking状态的,是无法再次Cherry-Pick的)。

然后进行再次Cherry-Pick,此时仍发生冲突,冲突情况如下图所示:

可以看到,左侧st代码已变为最新合并后的代码,即验证情况2的结论。

cherry-pick多次相关推荐

  1. git cherry pick

    直接将选定的其他分支的commit,提交到该分支上 不建议使用 git rebase --onto 使用cherry pick代替 http://weblog.avp-ptr.de/20120928/ ...

  2. 在gerrit上cherry pick多笔提交到一个仓库中

    我们的要求是在dvr_service仓库上从其他分支cherry pick 两笔提交到release/b03chn_rel_sop_3_nobo分支 这两笔提交分别如图所示 如图所示,B02-5746 ...

  3. 1.Cherry Pick与Create Patch的区别

    Cherry Pick与Create Patch的区别 结论 实验 场景1:应用时无冲突 场景2: 应用时产生冲突 使用cherry pick 使用patch 场景3:产生冲突,并且有其他文件的变更 ...

  4. idea cherry pick 功能 git log 窗口 冲突conflict

    git log 窗口 参考 source tree cherry pick, merge conflict merge conflict 冲突 <<<<<<< ...

  5. IDEA git cherry pick 简单使用

    cherry pick的作用: 参考了一些博客, eg: 参考博客1 参考博客2 再做了个小案例后,我目前的理解是,cherry pick的作用是将一个分支的部分提交/历史提交,可以合并到另外一个分支 ...

  6. [gitsourcetree]cherry pick和遴选的使用

    前言 cherry pick. 拷贝其中的某一次提交记录. 本文就介绍一种更加快捷的方式 cherry pick. 介绍 此方法主要用于2分支分别独立维护的情况, 即某一分支已经上线了spring-2 ...

  7. gerrit cherry pick to merge code

    开发中经常遇到,不同branch代码需要同步修改的问题, 通过gerrit cherry pick to功能可以方便的将已提交A Branch 的修改同步到B Branch上,提升工作效率

  8. 【git cherry pick冲突】

    修好了bug愉快的打算commit提交的时候 看到提示语句是can not commit changes due to unresolved conflicts 在Android Studio中寻找图 ...

  9. git 拉去merged 仓库的代码步骤

    1 首先将自己的代码提交到自己的分支仓库里面 2 代码已经提交了,可以清空本地仓库  git reset --hard HEAD^^^ 回车, 或者git reset --hard "指定的 ...

  10. gatsby_如何使用Gatsby.js来获取内容

    gatsby by Dimitri Ivashchuk 由Dimitri Ivashchuk 如何使用Gatsby.js来获取内容 (How to source content with Gatsby ...

最新文章

  1. python表白源代码加音乐_python炫酷烟花表白源代码
  2. 鸿蒙系统第一次出现,华为鸿蒙系统第三“用户”出现?没想到是它
  3. tcpdump抓取udp报文
  4. 鸿蒙系统cpu,鸿蒙系统,再加上自研电脑CPU,华为在下一盘很大的棋? - 区块网...
  5. 微软发布Windows 11 PC上也能运行手机应用
  6. C#有关string的方法
  7. 微信小程序背景音乐官方实例代码无效问题解决及音乐src获取方法
  8. 写在前面--点燃酱爆心中的那团火
  9. python下载官网-python下载官网
  10. Java8 in action(1) 通过行为参数化传递代码--lambda代替策略模式
  11. 基于PostgreSQL进行Java应用开发
  12. c语言对英文字母循环加密,RSA加密算法(C语言实现)
  13. 小米4 miui6 android,小米4如何线刷MIUI6 小米4线刷MIUI6教程【图文步骤】
  14. EPUB、CAJ 、PDF 格式的区别,有什么好用的epub阅读器
  15. amesim子模型_Amesim制动卡钳仿真--制动液子模型
  16. 抛出异常关键字throw与定义异常关键字throws
  17. PMP 第十三章项目干系人管理
  18. Java批量导出word压缩后的zip文件
  19. 刺激战场国际服服务器如何修改,刺激战场国际服如何更改自己的苹果id地区-无需购买海外id...
  20. 内网信息收集——工作组/域信息收集

热门文章

  1. ENVOY的首个 NFT 发行版“Decentraboard”数小时内售罄
  2. 爬虫之scrapy框架的数据持久化存储/保存为scv,json文件
  3. 协议的起始位,停止位
  4. 计算机教学管理,计算机教育教学管理论文
  5. Error: watch task has to be a function(optionally generated by using gulp.parallel or gulp. series)
  6. CS上线Linux--坑太多了
  7. 什么是最长前缀匹配?为什么网络前缀越长,其地址块就越小,路由就越具体?
  8. 枯燥的寒假生活(一) python爬虫模拟登录whu老教务系统获取期末考试成绩(已失效 , 老教务系统增加了新的反爬, 老教务系统已停用)
  9. div+css制作哆啦A梦
  10. 终结符号和非终结符号