Git从2个不同的git存储库合并2个分支,并且有空冲突

时间:2015-12-07 14:01:15

标签: git merge

我有2个回购,内容几乎相同,但它们是不同的git回购,不同的提交。

我想将repo A中的一个分支合并到repo B上,但是当我这样做时,我有很多空的冲突。这意味着,没有<<<<< >>>>>的冲突文件,两个分支中的两个文件都是相同的,但是根据git冲突。

当然,我可以git checkout --theirs fileX && git add fileX继续我的生活我确实有1000次冲突,其中50次是真正的冲突,950次是这种冲突。因此,经历所有1000次冲突将使我永远。

如何合并两个分支,忽略这个&#34;空冲突&#34;哪些不是真正的冲突?就像git说的那样,它是冲突,因为文件A和B是不同的&#34;但实际上内容是一样的。

我在做什么:

git remote add otherRepo file://...
git fetch --all
git merge -Xignore-all-space otherRepo/otherBranch

我想到了一个脚本迭代&#34;冲突&#34; 检查是否存在冲突,如果没有,git添加它。

但我想知道是否可以避免这种解决方法。

git status:

On branch master
Your branch is up-to-date with 'origin/master'.
You have unmerged paths.
  (fix conflicts and run "git commit")

Changes to be committed:

new file: fileA
new file: fileB
[a lot of new file: file...]

Unmerged paths:
 (use "git add <file>..." to mark resolution)

 both added: fileW
 both added: fileX
 both added: fileY
 [a lot of both added: file...]

无需修改或其他任何内容,new filesboth added

1 个答案:

答案 0 :(得分:0)

由于您提到您尝试与-Xignore-all-space合并 并且仍然没有工作试试这个:

git merge -Xignore-space-change