2

我知道如何配置外部工具以通过调用来查看差异git difftool。但是,如果我想将文件整个历史记录的所有更改“转储”到控制台窗口,我想使用git log -p <filename>. 我遇到的问题是我的 Windows 环境中的 *.sql 文件。 difftool(使用我配置的工具)正确处理 unicode 文件,但diff没有,这是我认为 git log -p在幕后使用的。

有没有办法让给git diff定/配置扩展名的文件“工作”,我知道实际上只有 ANSI 字符并显示输出到控制台的实际文本更改(在我的情况下,Windows PowerShell 托管在控制台内)。

注意:我已经看过这个关于让 git diff 识别 UTF16 的问题/答案,但我无法让它工作(iconv 和 mktemp 都不存在于我的系统上)。

也许这是我应该作为唯一可能的解决方案继续检查/试验的方法?或者我唯一的解决方案是确保将我知道仅存在 ANSI 字符的文件保存为 ANSI - 丢失我目前在 *.sql 文件(以及我不知道的任何其他文件)上的所有历史记录会令人失望现在存储为 unicode - 我是 Visual SourceSafe 新转换的 git 用户,因此不必查看我修改的所有文件类型的差异)。

4

1 回答 1

1

看看 git 属性。您可以自定义差异和其他方面如何处理某些文件。

这有什么帮助

于 2011-05-11T07:27:14.667 回答