update readme file
This commit is contained in:
BIN
git_readme.png
Normal file
BIN
git_readme.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 62 KiB |
36
readme.md
36
readme.md
@ -1 +1,35 @@
|
||||
# Added readme file
|
||||
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 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 (hint explanation)
|
||||
|
||||
- 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.
|
Reference in New Issue
Block a user