After getting past a few hurdles learning Git, I came across a new challenge: Renaming a directory (locally, in the working directory).
When I type git status<
The problem is a User interface / User experience problem, rather than a 'real' problem for git. I've asked the same question how-to-work-with-subdirectory-renames-in-git and an underlying question how-does-git-record-or-more-likely-represent-file-paths-and-names-for-its-blob
In fact Git doesn't actually care. All the messages you (we) get are about what 'diff' thinks might have happened. With other options the messages will be different but the repository won't be any different (it's the same snapshot!).
One option style is the subtree option for diff (though it is for a different purpose), as is --patience.
There is a need for a better UI/UX option that would more easily detect pathchanges (based on the trees rather than the blobs). Part of the problem is the subtle mistake in Linus's argument. He is right that the Git repo should not store the rename (pathchange) explicitly, rather we need an option to allow it's proper discovery.