假设我在Git分支master
和我git merge featurebranch
.发生了冲突foo.html
.
当我打开时foo.html
,我看到,在冲突地区,有什么master
和有什么featurebranch
.但我无法确切地说,在master
这种冲突方面做出了哪些改变featurebranch
; 我只知道主人现在有什么.
我想看看每个应用的差异.
或者,为了获得相同的信息,我可以看到:
master
现在featurebranch
现在我怎么能看到这个?
Raz*_*erM 90
通过将"merge.conflictstyle"配置变量设置为"diff3",可以使用替代样式.
除了
<<<<<<<
,=======
和>>>>>>>
标志,它使用另一个|||||||
后跟原文标记.你可以说原来只是陈述了一个事实,而你的一方只是屈服于那个陈述并放弃了,而另一方则试图采取更积极的态度.您有时可以通过查看原始分辨率来获得更好的分辨率.
这可以使用
$ git config --global merge.conflictstyle diff3
Run Code Online (Sandbox Code Playgroud)
小智 11
许多GUI diff/merge工具都有3或4路合并视图.我强烈推荐Beyond Compare来解决合并冲突.另一个(好的)工具是DiffMerge.
您可以设置自定义合并工具以与git mergetool
命令一起使用.这是我.gitconfig
在Windows机器上使用msysgit进行Beyond Compare(专业版)和DiffMerge的配置:
[merge]
tool = bc3
[diff]
tool = bc3
[difftool "dm"]
cmd = C:/Program\\ Files/SourceGear/Common/DiffMerge/sgdm.exe \"$LOCAL\" \"$REMOTE\"
[difftool "bc3"]
cmd = "\"c:/program files (x86)/beyond compare 3/bcomp.exe\" \"$LOCAL\" \"$REMOTE\""
[mergetool "bc3"]
cmd = "\"c:/program files (x86)/beyond compare 3/bcomp.exe\" \"$LOCAL\" \"$REMOTE\" \"$BASE\" \"$MERGED\""
Run Code Online (Sandbox Code Playgroud)
您可以在官方Linux Kernel Git文档中git config
阅读有关各种差异/合并工具配置的更多信息.
归档时间: |
|
查看次数: |
21387 次 |
最近记录: |