cherry-pick的使用

#git cherry-pick hash


已知:现在从master上分出了两个新的分支,dev和platform分支,现在我在dev分支不改变文件结构的情况下新增了一个desc.text的文件,同时platform分支也需要这个文件,按照以往的操作,我会切换到platform分支并手动复制一份该文件,并提交到platform分支上。当改动很小的时候没有问题,当一次修改涉及到了很多文件怎么办呢?怎么才能避免手动进行复制粘贴的工作呢?怎么避免每次都要重复修改某文件呢?

答:使用git cherry-pick hash 进行合并:单独将此次提交合并到指定分支。

具体操作:

  1. 切换分支 git checkout dev
  2. 查看最近的三次提交,得到目标哈希值 git log --oneline -3
  3. 切换到platform分支 git checkout platform
  4. 合并 git cherry-pick [hash]
  5. 有冲突解决冲突,提交代码 push
### 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 整体流程说明。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值