Determining Pushable Commits
1 min readAug 13, 2020
Breaking down our work into smaller commits can help us manage complexity but how do we know if we may need to first squash a set of commits before pushing?
A revertible commit exhibits high cohesion.
If reverting a commit leaves dead code, failing tests, or a broken application, then the set of changes do not form a united whole. The smallest unit of change should be able to stand on its own.
A pickable commit exhibits low coupling.
Can the commit be cherry-picked without needing other commits to come along with it? We want to be able to decompose our changes in such a way as to make them shareable.