用了6年git,不知道cherry-pick是啥意思

背景

可能是测试开发角色原因,平时很少有代码冲突或多人协同的编码场景。今天有个协同项目,需要提交自己的代码到其它业务的代码库中,这个代码库是分支开发分支上线模式,同时会有多个同事提交代码,然后模块负责的同学和我说了句:需要把代码cherry pick到release-internal-0718 分支,用了6年git的我一下子懵了,不知道具体怎么搞。

相关知识

我只能说好的,然后自己偷摸着学习了下:git cherry-pick的功能和使用场景。

git cherry-pick功能

git cherry-pick 是用来从一个分支中选择一个或多个特定的提交,并将这些提交应用到当前分支。这样可以只选择需要的更改,而不是合并整个分支。

git cherry-pick <commit-hash>

git cherry-pick应用案例

场景

你有两个分支:main 和 feature-branch。你在 feature-branch 上进行了多个提交,但其中有一个提交修复了一个重要的 bug,你希望将这个修复应用到 main 分支,而不合并 feature-branch 上的其他更改。

步骤

1、查看提交历史

首先,你需要找到 feature-branch 中包含修复的那个提交的哈希值。你可以通过以下命令查看 feature-branch的提交历史:

git checkout feature-branch
git log

假设修复提交的哈希值为 abc1234

2、切换到 main 分支

接下来,你需要切换到 main 分支:

git checkout main
3、Cherry-pick 这个提交

使用 git cherry-pick 命令将 feature-branch 中的这个修复提交应用到 main 分支:

git cherry-pick abc1234
4、处理冲突(如果有)

如果在 cherry-pick 过程中出现冲突,Git 会提示你。你需要手动解决这些冲突,然后使用以下命令继续:

git add .
git cherry-pick --continue

如果你想中止 cherry-pick,可以使用以下命令:

git cherry-pick --abort
5、推送更改到远程仓库

最后,你可以将这些更改推送到远程仓库:

git push origin main

总之,使用 git cherry-pick,你可以从一个分支中选择特定的提交并将它们应用到另一个分支。这对于只需要某些特定更改的情况非常有用,而无需合并整个分支。

其它命令介绍

git stash/git stash pop

git stash 是用来临时保存当前工作目录的修改(即使它们没有被添加到暂存区)。这样你可以在不提交的情况下切换分支或执行其他操作,而不会丢失当前的工作。

git stash

git stash pop 是用来恢复上次被 git stash 保存的工作。它会将存储的修改应用到当前工作目录,并从 stash 列表中移除。

git stash pop

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/872983.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

低代码与传统编程:快速高质量构建系统的比较与方法

在信息技术飞速发展的今天&#xff0c;企业对软件系统的需求不断增加。然而&#xff0c;如何在保证高质量的前提下快速构建系统成为了一个关键问题。本文将深入探讨低代码&#xff08;Low-Code&#xff09;开发与传统代码编程的区别&#xff0c;并探讨如何利用这两种方法快速高…

AG32 的MCU与FPGA的主频可以达到568MHz吗

Customers: AG32/ AGRV2K 这个芯片主频和定时器最高速度是多少&#xff1f;用户期望 CPLD计时器功能0.1ns以下。 AGM RE: CPLD做不到 0.1ns的速率&#xff0c;这个需要10G以上的时钟。 那AGRV2K最高多少MHz呢&#xff1f; 一般200MHZ比较容易实现。 进一步说明&#xff1…

富格林:可信办法阻挠虚假受骗

富格林悉知&#xff0c;在现货黄金中&#xff0c;投资者一定要谦虚谨慎切记不要骄傲自大&#xff0c;否则就可能遭遇投资虚假受骗。在盈利后一定要持续学习可信技巧稳固基础&#xff0c;失败了一定要总结错误教训这样才能阻挠虚假受骗为以后的稳定盈利打好基础。以下是富格林总…

昇思25天学习打卡营第29天 | 文本解码原理--以MindNLP为例

今天是29天&#xff0c;学习了文本解码原理--以MindNLP为例。 MindNLP 是一个基于 MindSpore 的开源自然语言处理&#xff08;NLP&#xff09;库。它具有以下特点&#xff1a; 支持多种 NLP 任务&#xff1a;如语言模型、机器翻译、问答、情感分析、序列标记、摘要等&#xff…

wps的xls文件,如何过滤掉空白没有数据的行

要在WPS的Excel文件中过滤掉空白没有数据的行&#xff0c;您可以按照以下步骤进行操作&#xff1a; 选择数据区域&#xff1a;首先&#xff0c;选择包含数据的整个区域。您可以通过点击数据区域的第一个单元格&#xff0c;然后按住Shift键&#xff0c;再点击数据区域最后一个单…

如果你要从一个接口获取 A 和 B 的数据,并根据获取到的数据展示不同的内容,你可以在 Vue 组件中实现如下:

获取数据&#xff1a;发送一个 AJAX 请求到接口&#xff0c;获取 A 和 B 的数据。处理数据&#xff1a;根据获取到的数据决定展示的内容。展示数据&#xff1a;使用 Vue 的条件渲染来展示 A、B 或空。 以下是具体的实现代码&#xff1a; <template><div><h1 v…

如何在 Python 中使用 CSV 文件进行读写?

如何在 Python 中使用 CSV 文件进行读写&#xff1f; 文章目录 一、说明二、什么是 CSV&#xff1f;三、使用 csv.reader 在 Python 中读取 CSV 文件的步骤四、使用 with&#xff08;&#xff09; 语句实现代码五、如何使用 .readlines&#xff08;&#xff09; 在 Python 中读…

GitHub备份代码的学习笔记

1. 备份工具&#xff1a;GitHub CLI 2. 认证方式 2.1 公用云服务器&#xff1a;SSH 可以通过使用GitHub CLI(命令行界面)在本地创建一个新的GitHub仓库,并直接使用本地项目代码文件夹的名称作为仓库名称,无需手动输入相同的名称。这可以通过以下步骤实现: 首先,确保您已安装…

Git报错:error: fsmonitor--daemon failed to start处理方法

问题描述 git用了很久了&#xff0c;但是后面突然发现执行命令时&#xff0c;后面都会出现这个报错&#xff0c;虽然该报错好像不会影响正常的命令逻辑&#xff0c;但是还是感觉有天烦人&#xff0c;就去找了找资料。 $ git status error: fsmonitor--daemon failed to start…

详细说一下axios的特点

Axios 是一个基于 Promise 的 HTTP 客户端&#xff0c;用于浏览器和 node.js 环境。它提供了一种简单的方式来发送 HTTP 请求&#xff0c;并处理响应。Axios 因其灵活性和易用性在前端开发中非常受欢迎&#xff0c;特别是在需要与 RESTful API 交互的 Web 应用中。以下是 Axios…

YOLOv5和LPRNet的车牌识别系统

车牌识别系统 YOLOv5和LPRNet的车牌识别系统结合了深度学习技术的先进车牌识别解决方案。该系统整合了YOLOv5目标检测框架和LPRNet文本识别模型 1. YOLOv5目标检测框架 YOLO是一种先进的目标检测算法&#xff0c;以其实时性能和高精度闻名。YOLOv5是在前几代基础上进行优化的…

硅谷裸机云多IP服务器怎么样?

硅谷裸机云多IP服务器是一种在硅谷地区提供的、具有多个IP地址的裸机云服务器。这种服务器结合了裸机服务器的高性能和云服务器的灵活性&#xff0c;同时提供了多个IP地址&#xff0c;为用户的各种需求提供了支持。以下是关于硅谷裸机云多IP服务器的一些详细信息&#xff0c;ra…

关于git clone速度极慢的解决方法

关于git clone速度极慢的解决方法 前言 如果没有一个可靠且稳定的魔法&#xff0c;接下来的就不用看了 尝试过的方法(未成功) 既然有成功&#xff0c;那么在探索过程中也必定会有失败的方法&#xff0c;下面也介绍一下我试过的没啥用的方法&#xff0c;给各位避雷&#xff…

Ubuntu安装virtualbox(win10)

virtualbox下载安装 1、下载virtualbox 下载路径&#xff1a;Linux_Downloads – Oracle VM VirtualBox 根据自己的Ubuntu版本选择对应的安装包下载 2、安装virtualbox 到下载路径&#xff08;一般为~/Download&#xff09;打开终端输入命令 sudo dpkg -i xxx.deb 继续执…

Web前端知识视频教程分享

资料下载地址: https://545c.com/f/45573183-1323782723-42d3b2?p7526 (访问密码: 7526)

C++从入门到起飞之——类的定义/实例化 全方位剖析!

个人主页&#xff1a;秋风起&#xff0c;再归来~ C从入门到起飞 个人格言&#xff1a;悟已往之不谏&#xff0c;知来者犹可追 克心守己&#xff0c;律己则安&#xff01; 目录 1.类的定义 1.1、类定义格式 1.2、访问限定符 1.3、类域 2.实例化 2.…

Android 12系统源码_存储(二)StorageManagerService服务

前言 在 Android 系统中&#xff0c;StorageManagerService是一个用于获取存储设备信息和管理存储设备的服务。它提供了一系列方法&#xff0c;可以获取当前挂载的存储设备信息&#xff0c;以及对存储设备进行挂载和卸载操作。 一、Storage存储模块介绍 1.1、StorageManager…

1个Xpath定位可以在Web页面查找到多个元素Selenium

1个Xpath定位可以在Web页面查找到多个元素Selenium//input[id\"transactionId\"] 打开Web页面&#xff0c; 点击F12可以看到压面 点击Ctrl F 可以点图如下图的输入框&#xff0c;输入xpath&#xff0c;看右侧可以找到3个对应的元素 点击Ctrl F 点击Ctrl F 点…

PHP 在shell服务器 创建定时任务 - thinkphp6 crontab

需求 需要设置定时任务&#xff0c;定时执行预设的php代码&#xff0c;完成预设的任务。 1.首先shell打开服务器需要设置定时任务文件夹 我的位置是 /opt/apache/html/jobs/ 你们自己看你们的位置了&#xff0c;这个不固定 2.查看定时任务 crontab -l contab 定时任务固定用…

图神经网络实战(17)——深度图生成模型

图神经网络实战&#xff08;17&#xff09;——深度图生成模型 0. 前言1. 变分图自编码器2. 自回归模型3. 生成对抗网络小结系列链接 0. 前言 我们已经学习了经典的图生成算法&#xff0c;虽然它们能够完成图生成任务&#xff0c;但也存在一些问题&#xff0c;促使基于图神经网…