По умолчанию, когда Visual Studio записывает файл в UTF-16 или UTF-8, он записывает метку порядка байтов (BOM, U + FEFF) в начало файла.Эта метка требуется при использовании UTF-16, но считается плохой идеей записывать ее в файлы с UTF-8.
Обычно метка порядка байтов имеет нулевую ширину, поэтому вероятная причинаВы видите это в GitKraken, а не в SourceTree, потому что GitKraken явно показывает это, тогда как SourceTree, вероятно, не показывает.
Если вы сохраняете файлы в формате UTF-8 в Visual Studio, вам нужно сохранить их вручную как «UTF».-8 без подписи ".Если вы сохраняете их, используя режим по умолчанию, он сохраняет их со спецификацией.
В качестве альтернативы, вы можете добавить .editorconfig
файл в ваш проект, который устанавливает набор символов по умолчанию как utf-8
.Это приведет к тому, что Visual Studio не будет писать спецификации в ваших файлах.Если ваш проект не желает принимать такой файл, вы можете создать его самостоятельно и проигнорировать его, добавив .editorconfig
к собственной строке в .git/info/exclude
.