设置特定文件类型的 'git diff'

12 浏览
0 Comments

设置特定文件类型的 'git diff'

我想在我的一个代码库中管理Excel文件。但是,对它们进行差异比较是个问题(它们是二进制文件)。然而,有一个很好的工具可以用来比较它们:https://github.com/na-ka-na/ExcelCompare

我想使用.gitattributes来设置它:

*.xls diff=excel
*.xlsx diff=excel

然后,在.git/config中:

[diff "excel"]

textconv = excel_cmp.bat

命令excel_cmp.bat file1.xls file2.xls运行得非常好。然而,我上面使用的设置似乎尝试将Excel文件转换为文本,然后再进行比较。

我如何设置差异工具来直接比较两个文件,而不是先转换为文本,然后再比较文本输出?

编辑:

在上述设置中,git似乎是在对excel_cmp.bat excel_cmp.bat 的输出进行比较。但是我想要的是excel_cmp.bat 。我该如何设置?

0
0 Comments

问题出现的原因是需要在Git中设置"git diff"命令以支持特定的文件类型,解决方法是使用开源Git命令行扩展工具"git-xltrail"来实现。

git-xltrail是一个用于Excel工作簿的Git命令行扩展工具,可以在GitHub上找到它的代码库(https://github.com/ZoomerAnalytics/git-xltrail)。它的安装过程非常简单,不需要进行任何手动配置。

该工具的主要功能是使"git diff"命令适用于任何工作簿文件格式,以便显示工作簿的VBA内容的差异。未来,该工具还计划支持工作表内容的差异显示。

对于Linux/LibreOffice环境,目前尚不清楚git-xltrail是否支持。

0
0 Comments

这个问题的出现的原因是用户在寻找如何为特定文件类型设置'git diff'命令时遇到了困难。用户希望通过在'.gitconfig'文件中添加特定文件类型的配置来实现这一目标。

解决方法是将以下内容添加到用户的'.gitconfig'文件中:

[diff "excel"]

command = excel_cmp.bat

在添加之后,用户需要确保'excel_cmp.bat'文件已经正确放置在适当的位置,以便'git diff'命令能够找到并使用它。

这样,用户就能够成功设置'git diff'命令来处理特定文件类型。

0