假设在dev01分支开发了2个新功能(A,B),对应2个commitA,commitB,但是上线前被告知只能上线功能A,此时可以:

1. 新建1个分支dev02

2. 将dev01上功能A对应代码cherry-pick到dev02上,dev02就有了功能A对应的代码

  • cherry-pick的用法:
$ git cherry-pick 6bbf6b4 #6bbf6b4为dev01上的commitId

  • 举个栗子:

   把dev01分支上的commit(增加1个文件),cherry-pick应用到dev02分支上。

/code/lianxi (dev01)
$ git commit -m "add 1.txt"    #dev01分支提交了1个commit 6bbf6b4
[dev01 6bbf6b4] add 1.txt
file changed, 1 insertion(+)create mode 100644 1.txt/code/pro (dev01)
$ git log
commit 6bbf6b4568d3b657dcfe06f06a69bd250c769942  #commit 信息
Author: a
Date:   Wed Jun 7 17:45:28 2017 +0800add 1.txt/code/pro (dev01)
$ git checkout dev02 #切换到dev02分支操作
Switched to branch 'dev02'/code/pro (dev02)
$ ls #dev02下此时没有1.txt/code/pro (dev02)
$ git cherry-pick 6bbf6b4 #将commit6bbf6b4 应用到dev02上[dev02 5e716f5] add 1.txt Date: Wed Jun 7 17:45:28 2017 +0800 file changed, 1 insertion(+) create mode 100644 1.txt /code/pro (dev02)
$ git log    #在dev02会产生1个新的commitId,内容为commit 6bbf6b4改动的内容
commit 5e716f52a541098afd0a0b74551878d119f97d14
Author: a
Date: Wed Jun 7 17:45:28 2017 +0800
add 1.txt /code/pro (dev02)
$ ls  #dev02也有了1.txt
1.txt

转载于:https://www.cnblogs.com/UniqueColor/p/9674298.html

git cherry-pick相关推荐

  1. git cherry pick

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

  2. IDEA git cherry pick 简单使用

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

  3. 【git cherry pick冲突】

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

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

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

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

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

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

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

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

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

  8. gerrit cherry pick to merge code

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

  9. Git 经常使用命令合集

    ====== Git 经常使用命令合集 ====== === 1.Git 文档 === Git 中文文档观看地址:http://git.oschina.net/progit/      === 2.G ...

  10. Git 报错:You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists).Please, commit your changes

    Git 报错 在 IDEA 中使用 Git 报错: You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists).Please, ...

最新文章

  1. Evince中文乱码
  2. android handler 的removeMessages的使用
  3. python汇率编程_【菜鸟学Python】案例一:汇率换算
  4. php支持cs吗,关于composer、phpmd和phpcs于windows中的安装与使用方法
  5. PGM学习之二 PGM模型的分类与简介
  6. java.lang.OutOfMemoryError内存溢出定位
  7. vue map遍历_vue中内嵌百度地图
  8. LINUX doubango编译详细过程记录
  9. 断面测量数据格式转换
  10. win10计算机证书管理器,Win10系统如何设置管理文件加密证书
  11. 小米路由R4A千兆版安装breed+OpenWRT教程以及救砖(全脚本无需硬改)
  12. 企业微信客户端web页面调试
  13. 计算机组成x什么意思,cpu后面带x是什么意思
  14. Python实例:小游戏20148
  15. 零基础入门:基于开源WebRTC,从0到1实现实时音视频聊天功能
  16. 如何下载离线地图数据(支持谷歌、百度、高德等所有地图源)
  17. python子图加标题_python – matplotlib的子图中的行和列标题
  18. Java基础(五):Java数组声明与初始化
  19. 鸿蒙操作系统游戏模式,鸿蒙OS 2.0采用鸿蒙和Android 10双架构,游戏性能比EMUI11表现好...
  20. 华为路ws5200设置虚拟服务器,华为路由器WS5200如何设置上网 最详细的华为路由器WS5200上网设置方法教程...

热门文章

  1. Python 技术篇-利用Office VBA实现word文档转化为pdf文档实例演示
  2. 浏览器打开html文件显示中文乱码解决方法
  3. JavaScript 技巧篇-js增加延迟时间解决单击双击事件冲突,双击事件触发单击事件
  4. leetcode C++ 4. 寻找两个有序数组的中位数 给定两个大小为 m 和 n 的有序数组 nums1 和 nums2。 请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为 O(log
  5. numel--矩阵的元素个数
  6. triu--上三角矩阵的抽取
  7. 第二十一讲 卷积公式
  8. Jupyter Notebook修改默认工作路径
  9. CentOS 7系统关闭yum自动下载更新
  10. PAT-乙级-1021. 个位数统计 (15)