合并单个commit到指定分支上——tortoisegit cherry pick 的使用

本文介绍如何使用Git的CherryPick功能将特定的Bug修复从一个分支同步到另一个分支,避免不必要的代码合并,适用于有多个分支同时开发的情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 当我们使用git管理一个程序的源码时,总是会新建很多分支。不同的分支可以直接使用merge来合并代码。但我们有时候会有这种需求,比如说我们有n个分支分别开发不同版本的程序,其基础功能是一样的,但是不同分支上有不同的需求开发,这时我们的基础功能上有一个bug的修复想同步到其他分支上就不能使用merge了,因为merge会合并所有改动代码。这种情况下,我们需要使用的是git的cherry pick功能。在命令行中使用这个功能比较简单,网上有很多,但是我们使用tortoisegit工具使用这个功能没看到介绍这种操作的,这里我分享出来也做个记录。
  • 比如,我们现在在dev上修复了一个基础功能的bug,并且已经push到远程了。这时,我们想把这次commit合并到hummer_lite_dev这个分支上。

  • 首先,我们需要切换到想要合并的分支上去,然后执行git fetch同步一下远程的提交记录。

  • 然后,选择右键菜单中的show log,查看提交日志,点击这里切换到我们要合并的commit的那个分支的日志。

  • 这时,可以在远程dev分支的提交记录上看到需要合并的那次commit。

  • 在这次commit上右键弹出菜单,选择Cherry Pick this commit...

  • 这时就会弹出cherry pick的界面,选中需要pick的那次commit,点击contimue,就会把这次commit合并并且提交到到本地的hummer_lite_dev分支上了。这里也可以查看commit的文件和msg,如果有冲突也要解决冲突。

  • 这里我们可以看到本地的分支已经指向了合并进来的最新一次的commit。

  • 最后,我们执行一下git pull、git push,将其同步到远程分支上就ok啦。



作者:吴尼玛cs
链接:https://www.jianshu.com/p/a7f0a6e0bf8c/
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

### TortoiseGitcherry-pick使用教程 在 TortoiseGit 中,`cherry-pick` 功能允许用户将某个特定的提交应用到当前分支。以下是具体的操作方法: #### 1. 切换至目标分支 首先需要确保工作目录处于正确的分支下。如果希望将修复的 bug 合并到 `master` 分支,则需先切换到该分支。可以通过右键点击文件夹,在弹出的菜单中选择 **TortoiseGit -> Switch/Checkout...** 来实现分支切换[^3]。 #### 2. 查看提交历史记录 切换完成后,通过右键菜单中的 **Show Log** 打开提交日志窗口。此操作会展示所有的提交记录以及对应的哈希值(commit SHA)。找到需要 cherry-pick 的提交条目[^4]。 #### 3. 应用 cherry-pick 操作 在提交日志界面中选中要挑拣的提交项,随后右击该项并选择 **Cherry Pick this...** 菜单项。此时 TortoiseGit 将尝试将所选提交的内容复制到当前分支上。 如果有冲突发生,TortoiseGit 会提示解决这些冲突后再继续完成 cherry-pick 流程。一旦成功执行完毕,记得再次查看状态以确认更改已正确加入当前分支。 #### 4. 推送更新至远程仓库 当本地修改全部处理妥当后,还需同步最新的改动回远程服务器。这可通过依次执行 **Git Pull**, 然后是 **Git Push** 完成最终同步过程[^2]。 ```bash # 如果有未推送的变更,可运行以下命令手动推送到远端 git pull origin master git push origin master ``` 以上就是在 TortoiseGit 下面进行 cherry-pick 整体流程说明。 --- ###
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值