summary refs log tree commit diff
path: root/.config/git/config
diff options
context:
space:
mode:
authorRobert Günzler <r@gnzler.io>2020-04-10 14:05:24 +0200
committerRobert Günzler <r@gnzler.io>2020-04-10 14:12:22 +0200
commite9c0d049e07c1b92c16ded58156c2b2dd0bf0f22 (patch)
treea780ebd770656c29eae7d747e22b0daf5f89fb28 /.config/git/config
parentc55d93fcce6d2d48f73c86b2c256d50926029e01 (diff)
git: trailer can now amend to messages behind HEAD
Diffstat (limited to '.config/git/config')
-rw-r--r--.config/git/config2
1 files changed, 1 insertions, 1 deletions
diff --git a/.config/git/config b/.config/git/config
index ff103cd..afc72bb 100644
--- a/.config/git/config
+++ b/.config/git/config
@@ -72,7 +72,7 @@
     rbi-pr = !bash -c 'git rebase --autosquash -i `git merge-base HEAD ${1:-origin/master}`'
     pushf = push --force-with-lease
     root = "rev-parse --show-toplevel"
-    trailer = "!f() { msg=$(git rev-parse --show-toplevel)/LAST_COMMIT_MSG; git log -1 --format=%B > $msg; git interpret-trailers --in-place --trailer $@ $msg; git commit --allow-empty --no-verify --amend --only --edit --file $msg; rm $msg; }; f"
+    trailer = "!f() { trailer=${1:-}; ref=${2:-HEAD}; mode='--amend'; [ $ref != 'HEAD' ] && mode='--fixup=$ref'; msg=$(git rev-parse --show-toplevel)/LAST_COMMIT_MSG; git log -1 --format=%B $ref > $msg; git interpret-trailers --in-place --trailer $trailer $msg; git commit --allow-empty --no-verify --only --edit --file $msg $mode; rm $msg; }; f"
     a = add --patch
     edit = !bash -c 'set -x && git rbi "${1:-HEAD}"^' -
     oldest-ancestor = !bash -c 'diff -u <(git rev-list --first-parent ${1:-master}) <(git rev-list --first-parent ${2:-HEAD}) | sed -ne \"s/^ //p\" | head -1'