Linus’s rules on keeping Git history clean (2009)
When I first read the often-repeated advice <i>NEVER change public history</i> or something along those lines I was like &#x27;yeah, &#x27;duh&#x27;. My opinion on that changed a bit though and I reckon this advice follows the standard pattern of good guidelines being falsely wrapped as strict rules which must never be broken.<p>In practice: I only work in smaller teams and we use feature branches which get merged into master after review, having the netto effect pretty much no-one is ever working directly on master. So it if happens someone does something like pushing a commit only to figure out 2 days later it has a typo or even needs a small code change or anything which would improve the commit with trivial changes not really worth creating another commit, we just go ahead and fixup&#x2F;rebase&#x2F;force push i.e. rewrite public history. Since the rest of the team always does pull --rebase of master anyway and&#x2F;or rebases feature branches this is not a problem at all.