Empty commits are useful to forcefully recreate a pipeline for example in GitLab
1.Good
2.Refactor
3.Rewrite
4.Empty with goodness re: 1
5.Rewrite
6.Refactor
...and now you retest and something is broken. You have an easy way to isolate any issues as happening after #4. And you have left markers for yourself 6 months from now if something goes wrong after a merge (i.e. confirm 1 and 4 match). git commit --amend -C@ && git push -f