On , I learnt ...
How to perform a non-interactive, interactive Git rebase
If you create a load of fix-up commits using:
git commit --fixup $COMMIT_HASH
then you don’t necessarily want to run
git rebase in interactive mode to fold
these commits into the branch history.
--autosquash option is sufficient as it re-orders the rebase todo list to
squash the fix-up commits into their biological parents.
In such cases, opening and closing an editor is a waste of time.
Instead, use the
GIT_SEQUENCE_EDITOR environment variable to specify a
non-interactive no-op “editor” like
true (or even merely
GIT_SEQUENCE_EDITOR=true git rebase --autosquash -i origin/master
This will fold the fix-up commits into your branch history in one command.
Tip found in this StackOverflow answer and this Reddit thread