是否可以设置自定义工具以在Git中合并具有特定扩展名的文件?
感谢您的任何指示!
更新
我无法提出任何更好的解决方案,而不是定义自定义difftool并像@jarodeells建议手工调用它一样:
[diff]
tool = mydiff
[difftool "mydiff"]
cmd="script.sh \"$LOCAL\" \"$REMOTE\""
然后明确地调用它:
$ git difftool -t mydiff someFileWith.ext
答案 0 :(得分:1)
如果尚未支持,请安装一个关闭扩展名的shell脚本,并调用正确的合并工具。
答案 1 :(得分:0)
更新:请参见下面的@Ackdari评论。外部工具不必基于命令行。我不确定使用外部工具时git如何使用binary = True
,但我怀疑可能需要使用它才能使所有流程正常工作。
如果您的外部差异工具*仅是命令行(没有GUI),您可以为此使用内置的gitattributes
:
在.gitconfig
中添加:
[diff "my_diff"]
command = Tools/csv_diff
binary = true # Not sure this is required.
并在.gitattributes
(全局或每个存储库,请参阅here)中添加:
*.csv diff=my_diff
[*]外部diff工具的命令将由git使用手册here中 GIT_EXTERNAL_DIFF 中详细介绍的7个参数调用。