Welcome to Software Development on Codidact!
Will you help us build our independent community of developers helping developers? We're small and trying to grow. We welcome questions about all aspects of software development, from design to code to QA and more. Got questions? Got answers? Got code you'd like someone to review? Please join us.
GitHub has a setting wherein they offer to "anonymize" your user email from, say, firstname.lastname@example.org to email@example.com. I presume this is to prevent you from getting spam from a scraper that reads the metadata on commits to public repositories.
How do they do this without invalidating the commit? Isn't the commit message, user, timestamp, and so on hashed along with the worktree state to get the commit hash?
My local Git is happy to pull stuff that other people have written on top of my commits with the anonymous author.
Does that mean that anyone with a clone of the repository can rewrite authorship of all the commits and still maintain the commit hashes of the original? Or is GitHub doing some giant translation between commit hashes on different forks?