我知道如何配置外部工具以通过调用来查看差异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 用户,因此不必查看我修改的所有文件类型的差异)。