接外包,有相关需求的可以联系我:Telegram | Email

如何使用cherry-pick?

该文章创建(更新)于02/2/2023,请注意文章的时效性!

场景

cherry-pick用于选择单个提交并应用到当前分支的方法。它允许你在不合并整个分支的情况下选择单个提交并将其应用到当前分支。

  • 感觉如果是单个提交的话必须要求每个提交记录的颗粒度足够细节,不然会产生不想要的东西。

基本使用流程

Git cherry-pick的基本使用流程如下:

  1. 在要使用cherry-pick的分支上,执行git cherry-pick <commit-hash>命令。这会将指定的提交应用到当前分支。
  2. 如果提交成功应用,则Git会显示一条类似于[前缀] <commit-hash> <commit-message>的消息,其中前缀是“+”(表示提交成功应用)或“-”(表示提交未成功应用)。
  3. 如果提交未成功应用,则可能存在冲突。这意味着你需要解决冲突,然后使用git cherry-pick --continue命令继续。如果无法解决冲突,则可以使用git cherry-pick --abort命令取消cherry-pick操作。
  4. 一旦应用了所需的所有提交,就可以使用git push命令将更改推送到远程仓库。

注意:使用cherry-pick时,应尽量避免在提交之间插入其他提交。这可能会使历史变得混乱,并使得回滚更改变得困难。如果必须在提交之间插入其他提交,则建议使用rebase命令。

示例

假定有两个分支dev和master

  • dev更改代码
git checkout dev
  • dev commit 提交代码
git add .
git commit -m "xxxx"
  • dev查看最近提交记录
git log --oneline -3
  • 切换到master分支
git checkout master
  • cherry-pick

其中的HASH来自dev查看时的记录,或者直接dev分支名称也可以

git cherry-pick HASH
  • 提交变更记录
git push

git cherry-pick如何进行代码评审?

简单说就是在分支上进行代码评审,分支评审没问题后在进行cherry-pick操作

如果你的团队要求使用cherry-pick的提交必须经过代码评审,则可以使用以下流程进行代码评审:

  1. 在执行cherry-pick之前,将提交提交到远程仓库的一个临时分支上。这样,其他人就可以通过浏览该分支上的提交来进行代码评审。
  2. 将代码评审请求发送给团队中的一名或多名成员,并请求他们审查该提交。
  3. 在代码评审完成后,如果代码被批准,则可以使用cherry-pick将提交应用到当前分支。
  4. 完成cherry-pick后,使用git push命令将更改推送到远程仓库。

注意:在使用cherry-pick时,应尽量避免在提交之间插入其他提交。这可能会使历史变得混乱,并使得回滚更改变得困难。如果必须在提交之间插入其他提交,则建议使用rebase命令。


要不赞赏一下?

微信
支付宝
PayPal
Bitcoin

版权声明 | Copyright

除非特别说明,本博客所有作品均采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可。转载请注明转自-
https://www.emperinter.info/2023/02/02/how-to-use-cherry-pick/


要不聊聊?

我相信你准备留下的内容是经过思考的!【勾选防爬虫,未勾选无法留言】

*

*



YouTube | B站

微信公众号

👉 NewsLetter ❤️ 邮箱订阅 👈

优惠码

阿里云国际版20美元
Vultr10美元
搬瓦工 | Bandwagon应该有折扣吧?
Just My SocksJMS9272283 【注意手动复制去跳转】
域名 | namesiloemperinter(1美元)
币安 币安