Re: Potential bug: Git instantly converts utf-8-bom to utf-8
- From
Lucas Seiki Oshiro <lucasseikioshiro@gmail.com>
- Date
- Apr 14, 2025, 17:19 UTC
- Message-ID
- <A743D2B5-0397-4AF3-899B-FC3D3AD2B5CB@gmail.com>
- In-Reply-To
- <DM6PR12MB386578E1F28B532600ADF575F7B32@DM6PR12MB3865.namprd12.prod.outlook.com>
> When I clone the git repository https://github.com/NinekoTheCat/infinilore.cs.git into an empty directory and run git status it shows changes where all the files are deleted and then added again.
I tried here. I'm in a Mac, it shows that several file changes.
> The difference seems to be in the first line as opening it in a text editor aware of encodings shows the change from utf-8-bom to utf-8.
Given the warning messages it looks like it is more related to CRLF/LF than to UTF-8.
At least here, for example, the listed modified '*.cs' files are the ones that ends their lines in CRLF. This is, running:
``` file $(git ls-files '*.cs') | grep CRLF | cut -d ':' -f1 | sort ```
shows me the same files as
``` git status '*.cs' ```
You can also see that are some '*.cs' files that are not CRLF-terminated by running:
``` file $(git ls-files '*.cs') | grep -v CRLF | sort ```
> I'd be very very grateful if anyone could explain what's going on and have a solution.<patch.cat>
Perhaps a solution is:
- Define a CRLF or LF as a standard - Convert all the files that don't follow the standard that you have chosen to the one that you have chosen - Declare it in the .gitattributes file
Hope that it helps you!