1️⃣ Reproduce the situation - Initially, my repo had a file called readme.md. - I renamed it to README.md (only case change). - After running: `git status` Git showed no changes, meaning it did not detect the rename. 📸 ![Git readme](git_readme.png) – Git did not show any changes after renaming readme.md → README.md 2️⃣ Investigate why Git is not tracking the rename - Git depends on the filesystem to detect changes. - On Windows (NTFS, FAT), the filesystem is case-insensitive. - That means readme.md and README.md are treated as the same file. - Because Windows reports no difference, Git assumes nothing happened. 3️⃣ Correct steps to make Git recognize and commit the rename To force Git to recognize the case-only rename: `git mv -f readme.md README.md` `git commit -m "Rename readme.md to README.md"` 4️⃣ Underlying reason - Git itself is case-sensitive → it can distinguish between readme.md and README.md. - Windows filesystems are case-insensitive → both names point to the same file. - On Linux/macOS (case-sensitive), Git would automatically detect the rename. - On Windows, we must explicitly force it with git mv -f. ✅ Conclusion: It’s due to the way Git (case-sensitive) interacts with Windows (case-insensitive) filesystems.