summaryrefslogtreecommitdiff
path: root/bin
diff options
context:
space:
mode:
authorSean Whitton <spwhitton@spwhitton.name>2021-12-31 15:33:06 -0700
committerSean Whitton <spwhitton@spwhitton.name>2021-12-31 15:42:01 -0700
commit90e800dec5e481879d2047f58643919146d86f10 (patch)
tree73f59db984ed2924ac8b29474f1e611a4ee3052e /bin
parente98f4f4e84e73ba7e0b28fcee81a35fabc0d2f73 (diff)
downloaddotfiles-90e800dec5e481879d2047f58643919146d86f10.tar.gz
amend most recent dotfiles commit when unsigned
Diffstat (limited to 'bin')
-rwxr-xr-xbin/git-dotfiles-dummy-master-commit15
-rwxr-xr-xbin/git-dotfiles-rebase15
2 files changed, 13 insertions, 17 deletions
diff --git a/bin/git-dotfiles-dummy-master-commit b/bin/git-dotfiles-dummy-master-commit
deleted file mode 100755
index cde8ef72..00000000
--- a/bin/git-dotfiles-dummy-master-commit
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/sh
-
-set -e
-
-. $HOME/.shenv
-
-cd $HOME/src/dotfiles
-if ! git is-clean; then
- echo >&2 "$0: cannot make dummy commit; dotfiles working tree not clean"
- exit 1
-fi
-branch=$(git rev-parse --abbrev-ref HEAD)
-[ "$branch" = "master" ] || git checkout master
-git commit --allow-empty -S -m"empty PGP-signed commit"
-[ "$branch" = "master" ] || git checkout "$branch"
diff --git a/bin/git-dotfiles-rebase b/bin/git-dotfiles-rebase
index ed2e984e..f1daee3c 100755
--- a/bin/git-dotfiles-rebase
+++ b/bin/git-dotfiles-rebase
@@ -4,18 +4,29 @@
set -e
+sign () {
+ if ! git is-clean; then
+ echo >&2 "$0: cannot -S --amend commit: dotfiles working tree not clean"
+ exit 1
+ fi
+ branch=$(git rev-parse --abbrev-ref HEAD)
+ [ "$branch" = "master" ] || git checkout master
+ git commit -S --amend --no-edit
+ [ "$branch" = "master" ] || git checkout "$branch"
+}
+
cd $HOME/src/dotfiles
hostname="$(hostname)" # use '-s' ?
if git rev-parse refs/heads/$hostname >/dev/null 2>&1; then
git checkout $hostname
git rebase master
if ! git push origin master +$hostname; then
- git dotfiles-dummy-master-commit
+ sign
git push origin master +$hostname
fi
else
if ! git push origin master; then
- git dotfiles-dummy-master-commit
+ sign
git push origin master
fi
fi