【问题标题】:GIT Merge Code changed in commit and not include changes to this file in previous commitsGIT 合并代码在提交中更改,并且不包括在以前的提交中对此文件的更改
【发布时间】:2015-02-23 19:53:22
【问题描述】:

我有两个分支 master 和 development。在 master 分支中,针对同一个文件进行了 3 次提交 -

修订版 1 - 第 1 行已更改

修订版 2 - 更改了第 2 行

修订版 3 - 更改了第 3 行

我只需要将 Revision 2 - Line 2 合并到 Develop。

Chery Picking Revision 2 会导致冲突,在这种情况下我必须手动解决冲突。

在 SVN 中,这是通过合并无缝实现的。由于我们有一个庞大的分布式团队,合并到开发是由模块负责人完成的,手动解决每个冲突将是一项艰巨的任务。在 GIT 中如何最好地实现这一点。

【问题讨论】:

  • 很难理解您在这里提出的确切问题。你以前尝试过什么?

标签: git svn version-control merge


【解决方案1】:

这取决于您想要达到的目标。 Cherry Pick 修订版 2 意味着您只能更改第 2 行,但不能更改第 1 行。 如果那是您想要的,那么您的方法很好。当然,您需要解决可能出现的任何冲突,但如果它真的只是一条线,那应该是微不足道的。 (和 svn 在这方面没有什么不同 - 当有冲突时你需要手动解决它们)。 如果您的问题确实是如何有效地解决冲突,请查看git mergetool

但是,这种行为与简单的 svn 合并不同。除非您明确地执行一个樱桃采摘合并,否则您还将获得修订版 1 中包含的更改。 如果这就是您想要的,您可以使用简单的git mergegit rebase

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-10-03
    • 1970-01-01
    • 2012-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-08
    相关资源
    最近更新 更多