git rename/moved status unreliable in ruby
- From
- sebastien.stettler <sebastien.stettler@proton.me>
- Date
- May 1, 2026, 05:05 UTC
- Message-ID
- <OsOzcjEwvHCQSghLE8LD_wHb_jDlil9I88OUuhpiRONnVd1o9p3gStbK1mx4q7OwY3ePtbZO-BBgTNOCeJ2DMyvBsdlMhRmDrTP894KP5xo=@proton.me>
1. What did you do before the bug happened? (Steps to reproduce your issue)
when moving ruby classes between namespaces they are marked as new files and the old ones are marked as deleted
if i only change the class name it will mark it as renamed
2. What did you expect to happen? (Expected behavior)
in the namespace state i would expected it to be marked as moved since nothing has fundementally changed
3. What happened instead? (Actual behavior)
the file was marked as new file and the old file was marked as deleted
What's different between what you expected and what actually happened
4. Anything else you want to add:
I have demonstrated the behavior here https://github.com/billybonks/git-rename
Mostly i would like to understand what is the expectation from gits point of view in these mutations. If this is considered something that can be improved i am happy to build out more test cases, and help with implementation.
if not, understanding the reasoning would be great
Thank you.
[System Info] git version: git version 2.47.1 cpu: arm64 no commit associated with this build sizeof-long: 8 sizeof-size_t: 8 shell-path: /bin/sh feature: fsmonitor--daemon libcurl: 8.7.1 zlib: 1.2.12 uname: Darwin 25.3.0 Darwin Kernel Version 25.3.0: Wed Jan 28 20:51:28 PST 2026; root:xnu-12377.91.3~2/RELEASE_ARM64_T6041 arm64 compiler info: clang: 16.0.0 (clang-1600.0.26.4) libc info: no libc information available $SHELL (typically, interactive shell): /bin/zsh
[Enabled Hooks]
Sent with Proton Mail secure email.