866 B
866 B
title | date | permalink | tags | cta | snippet | ||
---|---|---|---|---|---|---|---|
Optimise for revertability | 2024-05-10 | daily/2024/05/10/optimise-for-revertability |
|
~ | If you needed to revert a commit in a codebase, could you do so easily? |
There are two things I avoid when merging changes in Git.
Merge commits and squashing commits.
Both make it hard to revert changes if needed once they've been merged, such as a major bug in production and you quickly need to roll back.
Merge commits are difficult to revert and if a commit has been squashed into one larger commit, you can't revert it without also reverting everything else.
Working with small, unsquashed commits makes it simple to revert a specific one and only that one.
If I need to revert something, I want to be able to do as simply and specifically as possible.
Optimise for revertability.