在 git 差异调用中动态设置不同的差异工具
Setting a different diff tool dynamically at git diff calling
是否可以在调用 git diff
时动态设置不同的差异工具,甚至使用 shell 变量?
我不是说改变(坚持)git-config 配置,而是在 "calling time" 改变它,比如:
$ git diff oldbranch --diff-tool=path-to-my-diff-tool
$ GIT_DIFF_TOOL=path git diff oldbranch
$ export GIT_DIFF_TOOL=path; git diff oldbranch
也许不完全一样,但你可以获得完全相同的效果。 (也许 是 "exactly"。:-) )不要使用 git config diff.tool sometool
更改持久性本地配置,只需更改用于 this 的配置Git 命令 例如,git -c diff.tool=sometool difftool ...
.
您可以永久使用git config name value
进行的任何更改,您可以使用git -c <em>临时进行名称</em>=<em>值</em>
,持续一个Git命令。
编辑:注意 git difftool
本身有一个 -t <em>tool</em>
参数,所以这个特定的例子有点傻.我只是在这里使用它来展示 -c <em>name</em>=<em>value</em>
技巧是如何工作的。
只是为了记忆添加到这里,因为它在技术上也回答了这个问题。
git difftool --tool='sometool' <branch>
# or
git difftool -t 'sometool' <branch>
参见 --tool(文档)。
是否可以在调用 git diff
时动态设置不同的差异工具,甚至使用 shell 变量?
我不是说改变(坚持)git-config 配置,而是在 "calling time" 改变它,比如:
$ git diff oldbranch --diff-tool=path-to-my-diff-tool
$ GIT_DIFF_TOOL=path git diff oldbranch
$ export GIT_DIFF_TOOL=path; git diff oldbranch
也许不完全一样,但你可以获得完全相同的效果。 (也许 是 "exactly"。:-) )不要使用 git config diff.tool sometool
更改持久性本地配置,只需更改用于 this 的配置Git 命令 例如,git -c diff.tool=sometool difftool ...
.
您可以永久使用git config name value
进行的任何更改,您可以使用git -c <em>临时进行名称</em>=<em>值</em>
,持续一个Git命令。
编辑:注意 git difftool
本身有一个 -t <em>tool</em>
参数,所以这个特定的例子有点傻.我只是在这里使用它来展示 -c <em>name</em>=<em>value</em>
技巧是如何工作的。
只是为了记忆添加到这里,因为它在技术上也回答了这个问题。
git difftool --tool='sometool' <branch>
# or
git difftool -t 'sometool' <branch>
参见 --tool(文档)。