【问题标题】:Git merge with commit via cherry-pickGit 通过cherry-pick 与提交合并
【发布时间】:2012-05-21 17:44:51
【问题描述】:

以下场景:我有多个分支(主/预览/发布)。 我正在开发大师,定期提交。我们称它们为“实验性”和“修复性”。

现在我想在没有实验提交的情况下将选定的修复提交合并到我的预览分支。

图像应该显示我的意思。

现在我用cherry-pickrebase 尝试了它,但我不知道如何管理它。

【问题讨论】:

  • 首先 - '我正在开发大师',天哪。其次,你是怎么做樱桃采摘的?这应该就像检查您希望将更改添加到的分支并使用所需提交的哈希运行一个cherry-pick一样简单。
  • fistly:这只是一个可以轻松解释我想要做什么的场景:O 其次:我正在按照以下方式进行挑选:git checkout preview 然后git cherry-pick hashcode 其中hashcode 是hashcode 的hashcode ADC-commit。正如预期的那样,我的文件后来看起来像这样:A <<<<<<< HEAD B ======= D C >>>>>>> bbd71e0... ADC
  • master 分支本身并没有什么特别之处,我不明白您为什么不应该在那里开发 - 它可能不适合 您的 开发模型,但是有没有什么不好的。当然,将错误修复提交到与实验性新功能不同的分支中可能是个好主意 - 然后您可以将错误修复分支合并到实验性分支中以保持同步。
  • 你的做法听起来不错。究竟是怎么回事?有错误吗?

标签: git merge cherry-pick


【解决方案1】:

看起来,cherry-pick 是您想要的工具,但从您的 cmets 来看,您显然会遇到冲突。在这种情况下,请仔细阅读git cherry-pick 命令的输出,它应该会告诉您如何继续以完成挑选。通常,您必须找到冲突的文件(使用例如git status),解决冲突,然后git add 解决的文件。这三个步骤也可以使用git mergetool 替换。解析完成后,可以使用git cherry-pick --continue完成操作。

您可能需要考虑一下您的分支模型,通常您不需要经常使用cherry-pick。考虑例如在他们自己的分支中开发功能,并在为这些分支准备新版本时将它们合并到适当的“发布分支”(预览/发布)中。

【讨论】:

    猜你喜欢
    • 2016-01-08
    • 2012-03-11
    • 1970-01-01
    • 2018-12-08
    • 2012-11-05
    • 2021-01-18
    • 2012-07-23
    • 1970-01-01
    • 2018-04-17
    相关资源
    最近更新 更多