我正在尝试将分支合并到主服务器中。我构建的分支auths_images
具有我希望在master
中覆盖的更改。当我合并时,我得到了一大堆错误,基本上告诉我......
CONFLICT (add/add): Merge conflict in file
Automatic merge failed; fix conflicts and then commit the result.
我知道auth_images
与master
保持同步,并且可以使用master
进行更改。如何使合并工作,以便它使用分支中的更改?
答案 0 :(得分:1)
添加/添加冲突意味着,由于基础(当前分支上的当前(HEAD)提交和另一个分支的提示)添加了具有相同名称的文件。 Git不知道如何处理。您必须将正确的组合文件放入工作树中,并在该路径名上运行git add
。
如果两个文件 完全相同,Git就不会有问题。 Git会对自己说: Gosh,文件somenewfile
在分支auth_images
中是全新的,在master
中也是全新的。但是看看,现在两个分支提示中的相同!我可以使用其中任何一个,一切都会好的!因此两个文件必须不同。 Git不知道要使用哪个文件:来自auth_images
小费的文件,或者来自master
小费的不同文件?或者正确的事情是组合每个部分!
如果您确定这两个文件中只有一个是正确的,那么现在只需从该提交中提取一个:
git checkout master -- somenewfile
或:
git checkout auth_images -- somenewfile
请记住,这两个按照定义不同:如果它们相同,Git就不会抱怨。所以一定要找到合适的人。
从右侧分支提示中检出正确的分支将解析此特定文件。对每个其他add/add
冲突重复此操作,其中两个分支提示中的某个特定文件是正确的。假设这些是唯一的问题,您的git status
现在会说所有问题都已解决,并且合并已准备好提交,您现在可以运行:
git commit
完成合并。