about summary refs log tree commit diff
path: root/vcs
diff options
context:
space:
mode:
authorRobert Günzler <r@gnzler.io>2026-04-08 13:40:40 +0900
committerRobert Günzler <r@gnzler.io>2026-04-08 13:51:04 +0900
commitd39edddcddf95a04d681e332b882aeb63dd6232c (patch)
tree2d67e2af674039d7cd6b656e7d016de69a0aa385 /vcs
parent2200e168cfc35134aec2ccc656ad5419663a973c (diff)
downloadsite-d39edddcddf95a04d681e332b882aeb63dd6232c.tar.gz
Add vcs helper tool
Signed-off-by: Robert Günzler <r@gnzler.io>
Diffstat (limited to 'vcs')
-rwxr-xr-xvcs33
1 files changed, 33 insertions, 0 deletions
diff --git a/vcs b/vcs
new file mode 100755
index 0000000..c1deea8
--- /dev/null
+++ b/vcs
@@ -0,0 +1,33 @@
+#!/bin/sh
+set -eu
+[ -n "${DEBUG:-}" ] && set -x
+
+case "${1:-status}" in
+
+status)
+    exec git st
+    ;;
+
+commit)
+    shift
+
+    # prevent auto-commit of non-web files
+    if git ls-files -md | grep -qvE -e .htm$ -e .html$ -e .md$; then
+        exit 1
+    fi
+
+    git commit --all --trailer=Automated-commit-by:commitall --trailer=signoff --gpg-sign --message=* $*
+
+    echo
+
+    git log --stat --format=full -1
+
+    echo
+    ;;
+
+untracked)
+    shift
+    exec git ls-files -o $*
+    ;;
+
+esac