About three months ago, I started writing a blog post on why my (development) life has changed for the better since I started using git for version control. It's been stewing in my "Drafts" folder for lack of time and attention.
My main point was that git is optimized for messy reality, as opposed to an idealized view of software development that never really happened that way, but looks better when you draw it on a white board.
A few weeks ago, Ryan Tomayko said most of what I intended to say, in The Thing About Git.
So, "what he said". In particular:
- Git means never having to say, “you should have”
git --rebase interactiveis “a bit like
git commit --amendhopped up on acid and holding a chainsaw - completely insane and quite dangerous but capable of exposing entirely new states of mind.”