我尝试将其添加到.gitattributes:
* text=auto
*.sql diff
Run Code Online (Sandbox Code Playgroud)
但它仍然显示如下:
BIN ????? WebRole/Sql/Objects/dbo.Content.Table.sql ?
WebRole/Sql/dbo.Content.Table.sql Binary file not shown
Run Code Online (Sandbox Code Playgroud)
非常感谢这方面的帮助.
mrd*_*le1 10
我发现唯一有效的方法是将 .sql 文件的编码从默认的 UTF16 编码更改为 UTF8。下面根据您的情况概述了三种方法:
如果您有许多文件要更改并且对运行 Powershell 脚本感到满意,则可能需要尝试以下操作:
为了防止将来必须转换文件,您可以使用此链接中概述的方法更改在 SSMS 中创建的新查询的模板
小智 7
Git通常通过检查内容的开头来正确猜测blob是否包含文本或二进制数据.然而,在你的情况下,git变得混乱并将文件视为二进制文件,可能是由于文件中某处的二进制数据.
从git-diff手册页:
Run Code Online (Sandbox Code Playgroud)-a, --text Treat all files as text.
所以你仍然可以很容易地获得文本差异,如下所示:
git diff -a WebRole/Sql/Objects/dbo.Content.Table.sql
Run Code Online (Sandbox Code Playgroud)
要覆盖git不正确的猜测,请将以下内容添加到与文件相同的目录中的.gitattributes:
*.sql diff
并提交此文件.这将强制git从现在开始将每个.sql文件视为文本,不管它是否包含二进制数据.
| 归档时间: |
|
| 查看次数: |
4737 次 |
| 最近记录: |