首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用.gitconfig配置比较工具

使用.gitconfig配置比较工具
EN

Stack Overflow用户
提问于 2011-06-20 22:08:57
回答 5查看 245K关注 0票数 185

如何将Git配置为使用不同的工具来区别.gitconfig文件?

我的.gitconfig中有以下内容:

代码语言:javascript
复制
[diff]
    tool = git-chdiff #also tried /bin/git-chdiff

它不起作用;它只是打开常规的命令行diff。当我这样做的时候

代码语言:javascript
复制
export GIT_EXTERNAL_DIFF=git-chdiff

然后git diff将打开外部差异工具(所以我知道外部比较工具脚本工作得很好)。我的diff工具的.gitconfig配置有问题吗?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2011-06-20 22:18:33

Git提供了一系列预先配置好的“开箱即用”的差异工具(kdiff3、kompare、tkdiff、meld、xxdiff、emerge、vimdiff、gvimdiff、ecmerge、diffuse、opendiff、p4merge和araxis),还允许您指定自己的内容。要使用一个预配置的差异工具(例如,"vimdiff"),需要将以下代码行添加到~/.gitconfig

代码语言:javascript
复制
[diff]
    tool = vimdiff

现在,您将能够运行"git difftool“并使用您选择的工具。

另一方面,指定您自己的difftool需要更多的工作,请参见How do I view 'git diff' output with my preferred diff tool/ viewer?

票数 158
EN

Stack Overflow用户

发布于 2013-11-21 22:06:27

执行此操作的另一种方法(从命令行):

代码语言:javascript
复制
git config --global diff.tool tkdiff
git config --global merge.tool tkdiff
git config --global --add difftool.prompt false

前两行将difftool和mergetool设置为tkdiff-根据您的偏好进行更改。第三行禁用了恼人的提示符,因此每当您点击git difftool时,它都会自动启动difftool。

票数 198
EN

Stack Overflow用户

发布于 2011-06-20 22:24:02

下面是我的~/.gitconfig中配置diff和merge工具的部分。我喜欢SourceGear的diffmerge。(事实上,我非常非常喜欢它)。

代码语言:javascript
复制
[merge]
        tool = diffmerge
[mergetool "diffmerge"]
        cmd = "diffmerge --merge --result=\"$MERGED\" \"$LOCAL\" \"$(if test -f \"$BASE\"; then echo \"$BASE\"; else echo \"$LOCAL\"; fi)\" \"$REMOTE\""
        trustExitCode = false
[diff]
        tool = diffmerge
[difftool "diffmerge"]
        cmd = diffmerge \"$LOCAL\" \"$REMOTE\"

因此,您将在[difftool "diffmerge"]行中定义一个名为"diffmerge“的工具。然后,我在[diff] tool =部分中将工具"diffmerge“设置为默认值。

很明显,我的路径中有"diffmerge“命令,这里。否则,我需要给出可执行文件的完整路径。

票数 37
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6412516

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档