当前位置: 首页 > news >正文

Git Cherry Pick的使用

cherry-pick命令的基本用法

cherry-pick命令的基本语法如下:

git cherry-pick <commit>

其中,<commit>是要应用的提交的哈希值或分支名。该命令会将指定的提交应用到当前分支上,并创建一个新的提交。

使用场景

cherry-pick命令常用于以下场景:

  • 合并单个提交:
    当我们只想应用某个分支上的一个提交到当前分支时,可以使用cherry-pick命令,而不需要合并整个分支。
  • 修复bug:
    当我们在一个分支上修复了一个bug,并希望将这个修复应用到其他分支上时,可以使用cherry-pick命令。
  • 提取特定功能:
    当我们在一个分支上开发了一个新功能,并希望将该功能应用到其他分支上时,可以使用cherry-pick命令。

示例

master分支上的提交记录,如下图所示:
在这里插入图片描述
文件内容如下:

add A by master
add B by master     bb
add C by master

另一个分支dev上的提交记录,如下图所示:
在这里插入图片描述
文件内容如下:

add A by master       aa
add B by master
add C by master       cc
add dd

现在,我们打算将dev分支上的add aa after Aadd dd at new line提交应用到master分支上,则:

  1. 切换到master分支
git checkout master
  1. 输入以下命令
git cherry-pick 67b48e1bde3032061363daa85c1d35e7f096b0b8

有冲突,则解决冲突,然后git add -ugit cherry-pick --continue
在这里插入图片描述
然后,输入:

git cherry-pick 6e43cfdd6c8d5745fe649c3acb9ac91165eaa65c

解决冲突后,git add -u,然后git cherry-pick --continue
在这里插入图片描述
完成上述操作后,master的提交记录为:
在这里插入图片描述
文件内容为:

add A by master     aa
add B by master     bb
add C by master
add dd
http://www.lryc.cn/news/195305.html

相关文章:

  • vue3后台管理框架之基础配置
  • Easysearch压缩模式深度比较:ZSTD+source_reuse的优势分析
  • 扩散模型的系统性学习(一):DDPM的学习
  • 注意力屏蔽(Attention Masking)在Transformer中的作用 【gpt学习记录】
  • MyBatisPlus详解
  • 组合数的计算
  • linux之shell记录
  • 外卖大数据案例
  • 到底什么是5G-R?
  • uniapp 使用和引入 thorui
  • vue3中ref和reactive的区别
  • 文件路径操作
  • Java Cache 缓存方案详解及代码-Ehcache
  • JAVA设计模式-装饰者模式
  • STM32F1简介
  • SpringBoot面试题6:Spring Boot 2.X 有什么新特性?与 1.X 有什么区别?
  • qt笔记之qml下拉标签组合框增加发送按钮发送标签内容
  • linux上构建任意版本的rocketmq多架构x86 arm镜像——筑梦之路
  • Java8 新特性之Stream(五)-- Stream的3种创建方法
  • Vue实现模糊查询搜索功能
  • (C++ STL) 详解vector模拟实现
  • c语言从入门到实战——C语言数据类型和变量
  • [论文精读]Semi-Supervised Classification with Graph Convolutional Networks
  • CICD:使用docker+ jenkins + gitlab搭建cicd服务
  • 新能源电池试验中准确模拟高空环境大气压力的解决方案
  • Python 中的模糊字符串匹配
  • 记录一个奇怪bug
  • SpringBoot面试题7:SpringBoot支持什么前端模板?
  • leetcode做题笔记172. 阶乘后的零
  • linux之shell脚本练习