在Git中查看和编辑合并的最佳工具是什么?我想要一个3路合并视图,“我的”,“他们的”和“祖先”在单独的面板,和第四个“输出”面板。
此外,调用该工具的指令也很好。(我仍然没有弄清楚如何以这样一种方式启动kdiff3,它不会给我一个错误。)
我的操作系统是Ubuntu。
在Git中查看和编辑合并的最佳工具是什么?我想要一个3路合并视图,“我的”,“他们的”和“祖先”在单独的面板,和第四个“输出”面板。
此外,调用该工具的指令也很好。(我仍然没有弄清楚如何以这样一种方式启动kdiff3,它不会给我一个错误。)
我的操作系统是Ubuntu。
当前回答
您可以尝试P4Merge。
使用P4Merge可视化文件版本之间的差异。通过颜色编码解决由并行或并发开发引起的冲突。
特点包括:
Highlight and edit text file differences Choose to include or ignore line endings or white spaces Recognize line-ending conventions for Windows (CRLF), Mac (CR), and Unix (LF) Use command-line parameters and launch from non-Perforce applications Display line numbers when comparing and merging files Exclude files that are modified, unique, or unchanged Filter files by name or extension Organize modified assets in familiar file/folder hierarchy Compare JPEG, GIF, TIFF, BMP, and other file formats Extend using the Qt API Overlay images or display side-by-side Highlight differences on overlaid images
其他回答
吉特克斯 http://gitx.frim.nl/
当使用大型提交集时,会出现一些错误,但对于浏览更改和选择不同的更改进行阶段并提交非常有用。
您可以在Linux、Mac或Windows上安装ECMerge diff/merge工具。它是在Git中预先配置的,所以只需使用Git mergetool就可以完成这项工作。
我使用不同的工具进行合并和比较:
git config --global diff.tool diffuse
git config --global merge.tool kdiff3
First可以被调用:
git difftool [BRANCH] -- [FILE or DIR]
当你使用git mergetool时调用第二个。
漫射是我的最爱,当然我有偏见。:-)它非常容易使用:
$ diffuse "mine" "output" "theirs"
Diffuse是一个用Python编写的小而简单的文本合并工具。使用Diffuse,您可以轻松地合并、编辑和检查对代码的更改。Diffuse是免费软件。
你可以配置你自己的合并工具来使用“git mergetool”。
例子:
git config --global merge.tool p4merge
git config --global mergetool.p4merge.cmd p4merge '$BASE $LOCAL $REMOTE $MERGED'
git config --global mergetool.p4merge.trustExitCode false
当你这样做的时候,你也可以把它设置为“git difftool”的difftool:
git config --global diff.tool p4merge
git config --global difftool.p4merge.cmd p4merge '$LOCAL $REMOTE'
注意,在Unix/Linux中,你不希望$BASE被你的shell解析为一个变量——它实际上应该出现在~/中。Gitconfig文件来工作。