Git alias para corrigir / alterar um commit no histórico

  1. Prepare as mudanças que você deseja alterar para o commit anterior
  2. $ git fix <revision>(por exemplo git fix HEAD~4ou git fix bbfba98)

Às vezes você deseja alterar um commit que não é o pai imediato do HEAD atual. Este alias torna isso mais fácil.

[alias]
fix
= "!_() { c=$(git rev-parse $1) && git commit --fixup $c && if grep -qv "No local changes"" <<<$(git stash); then s=1; fi; git -c core.editor=cat rebase -i --autosquash $c~; if [[ -n ""$s"" ]]; then git stash pop; fi; }; _""

Síntese: https://gist.github.com/raine/5636366