Oliver Davies
5eba6de81a
This is a follow-up to commit 3be9031de8
as each daily email has a `permalink` value that overrides the default
content type permalink.
26 lines
872 B
Markdown
26 lines
872 B
Markdown
---
|
|
title: Optimise for revertability
|
|
date: 2024-05-10
|
|
permalink: daily/2024/05/10/optimise-for-revertability
|
|
tags:
|
|
- software-development
|
|
- git
|
|
cta: ~
|
|
snippet: |
|
|
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.
|