【问题标题】:Git merge for 2 branches2个分支的Git合并
【发布时间】:2015-07-19 18:33:50
【问题描述】:

有一个分支 A。我从分支 A 分支,所以我有一个分支 B。我从分支 B 分支,所以我有一个分支 C。

一段时间后,文件 file1.js 在 A 中更改,file1.js(不是 file2.js,但相同的 file1.js)在 B 和 file3.js 中。 然后由于file1.js,B被合并到A中并解决了冲突。

如果在 B 合并到 A 之后将 C 合并到 A,我会遇到任何冲突吗? 我希望答案是否定的,但是我仍然很好奇在将 C 合并到 A 时是否必须以任何方式解决 file1.js 冲突,或者我是否希望在合并时遇到任何困难。

谢谢。

【问题讨论】:

  • 我想你不会有任何冲突... :|
  • 如果 file1.js 在您从分支 B 创建分支 C 之前已在分支 B 中更改,则可能会发生冲突。这与您尝试将分支 B 合并到 A 时的情况完全相同。如果您在创建分支 C 后更改了分支 B 中的 file1.js,则不会发生冲突。

标签: git merge branch git-branch merge-conflict-resolution


【解决方案1】:

不会有冲突。合并操作只是添加两个父级的新提交(除非您所在的分支上没有提交,那么 git 将快进)。在您的情况下,来自分支 B 的提交将已经合并到 A 并且 git 会意识到这一点。 为了可视化该过程,我建议在Learn Git Branching 网页上尝试您的问题。 您需要执行的命令列表:

 git checkout -b A
 git checkout -b B
 git commit
 git checkout -b C
 git commit
 git checkout A
 git commit
 git merge B
 git merge C

【讨论】:

    猜你喜欢
    • 2011-03-25
    • 1970-01-01
    • 2016-02-06
    • 1970-01-01
    • 2012-01-24
    • 1970-01-01
    • 2012-06-21
    • 2023-03-06
    • 2018-03-28
    相关资源
    最近更新 更多