1、定义

使用遴选(cherry-pick)命令,Git 可以让你将任何分支中的个别提交合并到你当前的 Git HEAD 分支中。当执行 git merge 或者 git rebase 时,一个分支的所有提交都会被合并。cherry-pick 命令允许你选择单个提交进行整合。

遴选的好处

下面的情况可能会让你更容易理解遴选功能。

想象一下,你正在为即将到来的每周冲刺实现新功能。当你的代码准备好了,你会把它推送到远程分支,准备进行测试。

然而,客户并不是对所有修改都满意,要求你只呈现某些修改。因为客户还没有批准下次发布的所有修改,所以 git rebase 不会有预期的结果。为什么会这样?因为 git rebase 或者 git merge 会把上一个冲刺的每一个调整都纳入其中。

遴选就是答案!因为它只关注在提交中添加的变更,所以遴选只会带入批准的变更,而不添加其他的提交。

还有其他几个原因可以使用遴选:

  • 这对于 bug 修复是必不可少的,因为 bug 是出现在开发分支中对应的提交的。
  • 你可以通过使用 git cherry-pick 来避免不必要的工作,而不用使用其他选项例如 git diff 来应用特定变更。
  • 如果因为不同 Git 分支的版本不兼容而无法将整个分支联合起来,那么它是一个很有用的工具。

2、使用方法

1、在dev分支提交代码,得到提交记录

 2、切换到想要合并的目标分支

 3、点击原先提交的代码选择cherry-pick即可将代码合并到你的目标分支上

cherry-pick的定义和使用方法相关推荐

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

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

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

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

  3. Spring Boot 定义接口的方法是否可以声明为 private?

    我们在 Controller 中定义接口的时候,一般都是像下面这样: @GetMapping("/01") public String hello(Map<String,Ob ...

  4. abstract类中不可以有private的成员_我要告诉你:java接口中可以定义private私有方法...

    在传统的Java编程中,被广为人知的一个知识点是:java Interface接口中不能定义private私有方法.只允许我们定义public访问权限的方法.抽象方法或静态方法.但是从Java 9 开 ...

  5. error LNK2005: “找到一个或多个多重定义的符号” 已经在 xxxx.obj 中定义 的解决方法

    error LNK2005: "找到一个或多个多重定义的符号" 已经在 xxxx.obj 中定义 的解决方法 参考文章: (1)error LNK2005: "找到一个或 ...

  6. 第7.26节 Python中的@property装饰器定义属性访问方法getter、setter、deleter 详解

    第7.26节 Python中的@property装饰器定义属性访问方法getter.setter.deleter 详解 一.    引言 Python中的装饰器在前面接触过,老猿还没有深入展开介绍装饰 ...

  7. java private 接口_java接口中 定义 private 私有方法

    在传统的Java编程中,被广为人知的一个知识点是:java Interface接口中不能定义private私有方法.只允许我们定义public访问权限的方法.抽象方法或静态方法.但是从Java 9 开 ...

  8. java用流体加减乘除_任意输入两个数,完成加法、减法、乘法、除法运算!(加减乘除运算分别定义四个方法)_学小易找答案...

    [简答题]编写程序实现菜单设计 [简答题]一层平面图 [简答题]编写一个程序实现大小写字母转换 [简答题]利用循环语句输出一个五行的等腰三角形,如下图 [简答题]编写一个程序实现交换两个变量的数值. ...

  9. python 定义函数方法_Python动态定义函数的方法介绍

    本篇文章给大家带来的内容是关于Python动态定义函数的方法介绍,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 基于 MIT 许可协议 在 Python 中,没有可以在运行时简化函数 ...

  10. php生成vcf,[宜配屋]听图阁 - PHP实现生成vcf vcard文件功能类定义与使用方法详解【附demo源码下载】 原创...

    本文实例讲述了PHP实现生成vcf vcard文件功能类定义与使用方法.分享给大家供大家参考,具体如下: 前面介绍了php读取vcf文件的方法,这里再来研究一下vcf文件的生成方法. VCF格式是Wi ...

最新文章

  1. 用python画图代码比卡丘-Python选修课第二届Turtle绘图大赛 (皮卡丘)
  2. Pytorch搭建Faster R-CNN目标检测平台
  3. 720不能建立远程计算机连接,有高手知道错误720:不能建立到远程计算机的连接这个问题怎么解决? 爱问知识人...
  4. Android获取手机联系人或通讯录的基本信息(如姓名、电话)
  5. CC++——库头文件及其作用
  6. mysql 2008数据库配置文件_SQL Server 2008数据库的配置及连接
  7. 卷积神经网络CNN是靠什么线索学习到深度信息的?
  8. 设计模式学习笔记七:常用设计模式原则总结
  9. mysql分布式插入_添砖加瓦:MySQL分布式部署
  10. 使用Jackson忽略JSON对象上的新字段[复制]
  11. jquery基本过滤选择器:first :last :not(.myclass) :even :odd :eq(1) :gt(5) :lt(1) :header :animated :focus
  12. 插件开发之360 DroidPlugin源码分析(五)Service预注册占坑
  13. 如何解决大规模高性能存储可靠性问题?
  14. 传感器_磁编码器安装方法之见解
  15. matlab qpsk 星座图,QPSK误码率和星座图MATLAB仿真
  16. WebService接口大全
  17. ds18b20负温度c语言,温度显示异常DS18B20
  18. hadoop数仓建设之日志采集
  19. 蔡徐坤一条微博转发过亿 幕后推手被判刑五年
  20. 远程控制PLC实际案例——西门子SIMATIC S7-1200

热门文章

  1. 找一找mini usb 的AD封装
  2. iPhone 8快速充电技术简介,苹果再也不能被安卓嘲笑充电慢
  3. 什么是 Deno,它与 Node.js 有何不同?
  4. 海外服务器CDN加速与双线服务器有什么不同?
  5. 用信号量实现进程互斥,同步【操作系统学习笔记】
  6. 中考计算机操作题试题文档,初中信息技术中考excel操作题
  7. (五)【自控原理】结构图
  8. 制作一个移动Ubuntu系统,可以做到即插即用(U盘系统,非启动盘)
  9. 不同进制之间的转换(完整版)
  10. bugku ctf decrypt