当我将提交推送到Bitbucket并创建请求请求时,我可以在差异中看到weird symbol(\ ufeff)被添加到新创建文件的开头。
我不希望GitKraken添加任何其他符号,因此提交本来就是纯的。如何实现?
答案 0 :(得分:2)
默认情况下,Visual Studio以UTF-16或UTF-8格式写入文件时,会将字节顺序标记(BOM,U + FEFF)写入文件的开头。使用UTF-16时需要使用此标记,但通常认为用UTF-8将其写入文件是个坏主意。
通常,字节顺序标记是零宽度的,所以您可能在GitKraken中而不是SourceTree中看到它的原因是因为GitKraken明确显示了它,而SourceTree却没有。
如果要在Visual Studio中将文件另存为UTF-8,则需要将其手动保存为“不带签名的UTF-8”。如果使用默认模式保存它们,则会使用BOM表保存它们。
或者,您可以在项目中添加.editorconfig
file,将默认字符集设置为utf-8
。这将指示Visual Studio不要在文件中写入BOM。如果您的项目不愿采用这样的文件,则可以自己创建一个文件并忽略它,方法是将.editorconfig
添加到.git/info/exclude
中它自己的行中。
答案 1 :(得分:0)
在最近的git上,将以下内容添加到.gitattributes
应该可以解决您的问题:
*.cpp text working-tree-encoding=UTF-8 eol=CRLF
将cpp
替换为所需的任何文件类型
注意:参见.gitattributes man page
iconv
通话情况