如何在git中合并和更新文件时解决冲突?

Dam*_*che 5 git version-control

我觉得我接近这一切都错了.

我作为团队的一部分工作,我们使用git.现在,当我从我的团队中提取更新时,显然会不时发生冲突 - git似乎在文件中插入了大量文本,这是不好的.

无论如何,有没有一个体面的方法来管理这些冲突(我在Windows上).

我使用winmerge,但从我所看到的,它只能比较2个目录.它使解决冲突变得轻而易举,但要求我在2个不同的位置拥有2个源的状态.

有没有人知道更好的方法来做这个或如何整合这两个?

Mak*_*kis 5

您可以为Git定义一个mergetool,它会针对每个冲突文件进行launced.如果您只有少量冲突,这可以正常工作.一些链接:使用Beyond Compare,在SO上讨论这个,更一般的说明手册页.

如果您有很多更改,可以使用一些脚本包.

基本上你需要做的是让例如Beyond Compare在Linux中工作:

git config --global merge.conflictstyle=diff3
git config --global merge.tool=bc3
git config --global mergetool.bc3.cmd=/usr/bin/bcompare $LOCAL $REMOTE $BASE $MERGED
git config --global mergetool.bc3.trustexitcode=true
Run Code Online (Sandbox Code Playgroud)

您可以轻松找到其他工具的信息,Git已经支持多种工具.