git merge branch不会给出冲突

时间:2014-03-03 10:27:36

标签: git branch git-merge

我有一个git存储库,其中有一个名为hi.txt的文件。它只有一个分支即主。其内容为Hi this is it.我已提交此更改,然后使用newb在名为git checkout -b newb的新分支中检出该更改。现在在这个分支中我将文本更改为Hi this is not it.我也提交了此代码。现在我使用git checkout master切换到master,然后使用git merge newb合并newb分支。现在git应该给我一个冲突,因为两个分支都有相同文件的不同版本,但事实并非如此。它会覆盖master分支与newb分支的内容,因此hi.txt的内容变为Hi this is not it.这是它应该如何工作的吗?

1 个答案:

答案 0 :(得分:2)

为什么会发生冲突?

  • 您在hi.txt
  • 中创建了master
  • 您创建了一个新分支newb并修改了hi.txt
  • 您切换回master并将newb中完成的更改合并到master

它的工作方式。我们不使用SVN,是吗?

如果您在创建hi.txt之后更改了master 中的newb,情况会有所不同:这会导致两个分支都有修改的状态。

但上述工作流程不会导致任何问题。

在Git Book中更深入地阅读有关分支和合并的内容:
http://git-scm.com/book/en/Git-Branching-Basic-Branching-and-Merging


修改:根据您的comment,您只想知道masternewb之间哪些文件不同。这可以使用

轻松实现
git diff --name-only master newb