能否在Git中设置自定义工具合并特定扩展名的文件?
非常感谢任何指导!
更新
我没有想到比定义自定义差异工具并像@jarodeells建议的那样手动调用它更好的解决方案:
[diff]
tool = mydiff
[difftool "mydiff"]
cmd="script.sh \"$LOCAL\" \"$REMOTE\""
然后显式调用它:
$ git difftool -t mydiff someFileWith.ext
能否在Git中设置自定义工具合并特定扩展名的文件?
非常感谢任何指导!
更新
我没有想到比定义自定义差异工具并像@jarodeells建议的那样手动调用它更好的解决方案:
[diff]
tool = mydiff
[difftool "mydiff"]
cmd="script.sh \"$LOCAL\" \"$REMOTE\""
然后显式调用它:
$ git difftool -t mydiff someFileWith.ext
gitattributes
进行设置:.gitconfig
中添加以下内容:[diff "my_diff"]
command = Tools/csv_diff
binary = true # Not sure this is required.
在 .gitattributes
文件中(可以是全局的或者每个仓库的,参见这里),添加以下内容:
*.csv diff=my_diff
binary = true
选项(就在command = Tools/csv_diff
下面)。也许这就是需要的更改。 - OmerBbinary = true
不是必需的。但我仍然好奇为什么我不能像 merge.<driver>.driver
那样修改cli参数的提供方式(请参阅文档)。 - AckdariBinary files /dev/null and b/bild.jpg differ
。 - Ackdarigit config --global core.attributesfile /home/alex/.gitattributes
。请注意,如果您只想在一个存储库中使用它,则需要写入.git/info/attributes
(至少在Linux git上)。 - Alex Zefferttgitconfig
实现(如标签所示)。 - rlegendi
script.sh
后面有一个额外的"
,这是不必要的。现在应该没问题了 :-) - rlegendigit difftool --cached
命令时,脚本无法捕捉到该选项并且无法工作。你遇到过这个问题吗? - Halil