I have this situation in git:
-F--M--F1-->
/
/
-D--D1-->
- F is a commit on a feature branch, which contains the file in question.
- D is a commit on the main development branch, which does not contain the file.
- M is a merge commit that merges the development branch into the feature branch.
If I checkout F, I see the file. If I checkout M, the file is gone.
But git show --name-status M does NOT show the file being removed. It instead shows two other files with 'MM' (literally) in the status column, meaning both sides had changes in the merge.
What is happening? How is the file removed in commit M without git showing it as removed?