Case Sensitive Bug for "index.html/Index.html"

Command attempted:
git pull / git push

What happened:
If I clone a repo locally, create a “index.html” local with basic html structure, create a capital “Index.html” remotely (Github website) with same structure.

Then commit local changes, fetch upcoming changes (capital Index) using “git pull”, the git shows that capital “Index.html” will be overrided by the merge, but update my local non-capital “index.html”.
Then when I create a new commit with these changes and send a “git push”, the capital “Index” remains there and locally appear a new change to be done commited on local “index.html”.
I commit it and send. So I got a message to pull first. When I do this, my local non-capital “index.htm” changes to capital “Index.html” and it didin’t get both files to my local machine but both remains on remote repo.


More info:

$ git --version
git version 

$ systeminfo
OS Name:                   Microsoft Windows 10 Enterprise
OS Version:                10.0.18363 N/A Build 18363

Windows by default tends to treat file systems as case-preserving, but not case-sensitive. (If you ask very hard, you can get it to use NTFS in case-sensitive mode, but on average, people tend to regret it, as most programs have mistakes like the one in your repository.)

git tries to interoperate with this, but if your file system isn’t case-sensitive, then it has a hard time understanding if you want to change the file’s case. And if your commit has the wrong case, then when it’s checked out on a case-sensitive file system instead, you’ll be unhappy.

If you’ve fixed the files in the repository, you can try deleting all the checked out files locally and then doing git restore -- '*' to restore your files.