????? 当代码量少的时候使用,使用vimdiff或者手动处理冲突,都很方便,但是当代码量大还是图形化处理更方便,这里推荐使用kdiff3。
?????? 首先下载kdiff3,网上不好找的话,可以通过下面的连接下载,
https://download.csdn.net/download/robinhunan/26361640 按照提示下载并安装即可。
//代码合并工具,在cmd配置使用kdiff3处理冲突 git config --global --add merge.tool kdiff3 git config --global --add mergetool.kdiff3.path "C:/Program Files/KDiff3/kdiff3.exe" git config --global --add mergetool.kdiff3.trustExitCode false
当检出代码有冲突时
输入:
git mergetool
?Normal merge conflict for 'a.txt': ? {local}: modified file ? {remote}: modified file The merge tool kdiff3 is not available as 'kdiff3'
会弹出图形化代码冲突解决界面
?菜单下面会出现4个区域,
A: Base 当前文件与将要合并文件的共同祖先版本 B:Local 当前分支的文件内容 C:Remote 合并分支的文件内容 Output : 合并后的新文件
只需要在Output窗口进行右键A B C 选择即可解决conflicts,并且有的已经帮你自动选择好了,可能情况下只需要你点击菜单栏的 unsolved conflicts,进行选择即可。
?如果output窗口,Line end style 提示“Conflict”如下图,还需要选择解决方式,否则保存的时候会报错。
冲突解决完成后,按ctl+s保存即可,保存完成后,会生成.org文件。可以在.gitingnore 增加忽略或者 ,按照以下方法配置,不生成.orig文件。
git config --global mergetool.keepBackup false
?或者修改kdiff3的配置
?
|