我有一个站点本地仓库和一个远程仓库。 本地仓库包含1-2个月的远程仓库内容。
我尝试将整个内容整合到本地回购中。
git pull origin master
From ssh://.../site.git
* branch master -> FETCH_HEAD
...
CONFLICT (add/add): Merge conflict in admin/process_email.php
Automatic merge failed; fix conflicts and then commit the result.
我使用P4Merge检查了process_email.php,但没有显示冲突,此外根本没有变化,没有区别。
更新:
我得到了
$ git status
On branch master
nothing to commit, working directory clean on both repos.
我也试过
$ git pull -X theirs origin/master master
但仍然会得到同样的错误。
我想将远程原始仓库与我的本地仓库合并。 我想用远程原始repo内容覆盖本地仓库,因为远程仓库更新,包含最新代码。
超过2000个文件存在冲突,而我检查了冲突并且它们具有相同的内容。我不想做手动冲突处理。
我有 autocrlf = False 在.gitconfig中。为什么我的内容完全相同的文件会出现冲突错误?
答案 0 :(得分:4)
最后解决了这个问题,基于以下线程中使用的解决方案:
How to handle/fix git add/add conflicts?
# moved all files from the local workdir to another directory.
mv /workdir/* /old_content
# commit this change
git commit -m 'Resolve git Add/Add branch merge conflict by deleting conflicted folder and files in myconflictedfolder'
# do merge from remote
git pull origin master
Pull已成功执行,不再发生冲突。
我现在可以覆盖old_content目录,如果需要,然后提交。
祝你好运, 康拉德
答案 1 :(得分:0)
消息显示您有add/add
冲突,这意味着该文件已添加到您的分支和您正在合并的文件中。这限制了Git的合并能力,因为没有共同的祖先(即两边的文件的每个部分都会有冲突)。在文本编辑器中打开文件,看看是否有冲突标记并解决它们。
运行git status
会为您提供有关内容的更多信息。
如果您对文件内容感到满意,请在其上运行git add
并git commit
。
答案 2 :(得分:0)
如果有人强行按下遥控器,也会发生这种情况。 快速解决方法是在本地硬重置,然后拉动
git reset --hard origin/master
git pull
还应该避免使用 git force push。