Git is an incredibly powerful tool for version control. Much of this power stems from its underlying append-only object database which ensures that once you’ve made a commit it can never be changed or unmade. This is great because it means you can refactor history safe in the knowledge that you can git reset back to a working version if something goes wrong. One thing I’ve yearned for however is t