2025-09-04 05:49:04 +00:00
2025-09-01 17:38:28 +05:30
2025-08-22 23:47:04 +05:30
2025-08-30 11:15:05 +05:30
2025-08-22 23:47:04 +05:30
2025-08-22 23:47:04 +05:30
2025-08-22 23:47:04 +05:30
2025-08-30 13:16:55 +05:30
2025-08-30 11:15:05 +05:30
2025-09-04 11:18:03 +05:30
2025-08-30 11:15:05 +05:30
2025-09-01 17:38:28 +05:30
2025-08-23 00:18:05 +05:30
2025-08-30 05:30:17 +00:00
2025-08-22 23:47:04 +05:30
2025-09-04 05:49:04 +00:00
2025-08-30 11:15:05 +05:30
2025-08-22 23:47:04 +05:30

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 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: Its due to the way Git (case-sensitive) interacts with Windows (case-insensitive) filesystems.

Description
No description provided
Readme 844 KiB
Languages
Markdown 100%