如何查看“git的差异输出与视觉diff程序
答案:1 悬赏:20 手机版
解决时间 2021-04-15 14:35
- 提问者网友:容嬷嬷拿针来
- 2021-04-15 03:40
如何查看“git的差异输出与视觉diff程序
最佳答案
- 五星知识达人网友:雾月
- 2021-04-15 04:59
有两种不同的方法来指定一个外部diff工具。
第一个是你所使用的方法,通过设定GIT_EXTERNAL_DIFF变量。然而,该变量应该指向的可执行文件的完整路径。此外,通过GIT_EXTERNAL_DIFF指定的可执行文件将被调用,一组固定的7参数:
path old-file old-hex old-mode new-file new-hex new-mode
由于大部分的diff工具,将需要不同的顺序(只有部分)的参数,您很可能必须指定一个包装脚本来代替,这再调用真正的比较工具。
第二种方法,这是我比较喜欢,就是通过“混帐配置外部比较工具
配置“,这是我做的事:
1)创建一个包装脚本”“,其中包含像
-->8-(snip)--
#!/bin/sh
# diff is called by git with 7 parameters:
# path old-file old-hex old-mode new-file new-hex new-mode
"" "$2" "$5" | cat
--8<-(snap)--
正如你所看到的,只有第二个(”旧档“)和第五(”新GIT-DIFF-wrapper.sh -file“)论证会
传递给比较工具。
2)类型
$ git config --global diff.external
在命令提示符下,用路径“混帐-DIFF-wrapper.sh”取代,所以你的〜/的.gitconfig包含
-->8-(snip)--
[diff]
external =
--8<-(snap)--
一定要使用正确的语法指定的包装脚本和差异的路径
工具,即使用正大幅削减,而不是反斜杠。就我而言,我已经
[diff]
external = c:/Documents and Settings/sschuber/git-diff-wrapper.sh
中的.gitconfig和
"d:/Program Files/Beyond Compare 3/BCompare.exe" "$2" "$5" | cat
在包装脚本。介意尾随“猫”!
(我猜的 | cat“只需要对某些程序可能无法返回正确的或一致的返回状态,你可能想尝试无尾猫,如果你的比较工具都有明确的返回状态)
这(上述文章引用)的理论,通过配置文件(而不是通过环境变量)中定义的外部工具。
在实践中(依然为外部工具配置文件定义),你可以参考一下:
How do I setup DiffMerge with msysgit / gitk?,它说明的+ +记事本的定义为外部编辑器DiffMerge和的WinMerge的MsysGit和gitk
How can I set up an editor to work with Git on Windows?的具体设置。
转载
第一个是你所使用的方法,通过设定GIT_EXTERNAL_DIFF变量。然而,该变量应该指向的可执行文件的完整路径。此外,通过GIT_EXTERNAL_DIFF指定的可执行文件将被调用,一组固定的7参数:
path old-file old-hex old-mode new-file new-hex new-mode
由于大部分的diff工具,将需要不同的顺序(只有部分)的参数,您很可能必须指定一个包装脚本来代替,这再调用真正的比较工具。
第二种方法,这是我比较喜欢,就是通过“混帐配置外部比较工具
配置“,这是我做的事:
1)创建一个包装脚本”“,其中包含像
-->8-(snip)--
#!/bin/sh
# diff is called by git with 7 parameters:
# path old-file old-hex old-mode new-file new-hex new-mode
"
--8<-(snap)--
正如你所看到的,只有第二个(”旧档“)和第五(”新GIT-DIFF-wrapper.sh -file“)论证会
传递给比较工具。
2)类型
$ git config --global diff.external
在命令提示符下,用路径“混帐-DIFF-wrapper.sh”取代,所以你的〜/的.gitconfig包含
-->8-(snip)--
[diff]
external =
--8<-(snap)--
一定要使用正确的语法指定的包装脚本和差异的路径
工具,即使用正大幅削减,而不是反斜杠。就我而言,我已经
[diff]
external = c:/Documents and Settings/sschuber/git-diff-wrapper.sh
中的.gitconfig和
"d:/Program Files/Beyond Compare 3/BCompare.exe" "$2" "$5" | cat
在包装脚本。介意尾随“猫”!
(我猜的 | cat“只需要对某些程序可能无法返回正确的或一致的返回状态,你可能想尝试无尾猫,如果你的比较工具都有明确的返回状态)
这(上述文章引用)的理论,通过配置文件(而不是通过环境变量)中定义的外部工具。
在实践中(依然为外部工具配置文件定义),你可以参考一下:
How do I setup DiffMerge with msysgit / gitk?,它说明的+ +记事本的定义为外部编辑器DiffMerge和的WinMerge的MsysGit和gitk
How can I set up an editor to work with Git on Windows?的具体设置。
转载
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯