我知道如何配置外部工具以通过调用git difftool
来查看差异。但是,如果我想查看文件整个历史记录的所有更改的“转储”到我的控制台窗口,我想使用git log -p <filename>
。我遇到的问题是在我的Windows环境中使用* .sql文件。 difftool
(使用我配置的工具)正确处理unicode文件,但diff
没有,这是我认为 git log -p
使用的内容。< / p>
有没有办法让git diff
'工作'与给定/配置扩展名的文件,我知道确实只有ANSI字符,并显示输出到控制台的实际文本更改(在我的情况下,Windows PowerShell托管在控制台内。)
注意:我已经看过this question/answer关于让git diff识别UTF16,但是我无法让它工作(我的系统上没有iconv和mktemp)。
也许这是我应该继续检查/试验的方法,作为唯一可行的解决方案?或者我唯一的解决方案是确保我知道仅存在ANSI字符的文件保存为ANSI - 如果丢失我目前在* .sql文件上的所有历史记录(以及我不知道的任何其他文件,将会令人失望)现在存储为unicode - 我是Visual SourceSafe中新转换的git用户,因此不必查看我修改的所有文件类型的差异。
答案 0 :(得分:1)
看一下git属性。您可以自定义diff和其他方面处理某些文件的方式。
这有何帮助