aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Ankarstrom <john@ankarstrom.se>2021-07-08 22:03:15 +0200
committerJohn Ankarstrom <john@ankarstrom.se>2021-07-08 22:03:15 +0200
commit6d840984dcd0fc211244d69fb8e1080c13064bb7 (patch)
tree2e6a30e92cc6cd0841fd075baae9354de91cb058
parent301e03b46ce35589dbd2b7985d6ae8bef0dca64a (diff)
downloadxutil-6d840984dcd0fc211244d69fb8e1080c13064bb7.tar.gz
Add 'git-orig' utility
-rwxr-xr-xgit-orig20
-rwxr-xr-xwith-shell1
2 files changed, 21 insertions, 0 deletions
diff --git a/git-orig b/git-orig
new file mode 100755
index 0000000..a792390
--- /dev/null
+++ b/git-orig
@@ -0,0 +1,20 @@
+#!/bin/sh
+
+# git-orig -- checkout original file
+
+[ $# -lt 2 ] && { echo "usage: $0 head file [...]" 1>&2; exit 1; }
+
+h=$1
+shift
+set -e
+
+for f in "$@"; do
+ mv -i "$f" "$f".new
+done
+
+git checkout "$h" -- "$@"
+
+for f in "$@"; do
+ mv -i "$f" "$f".orig
+ mv "$f".new "$f"
+done
diff --git a/with-shell b/with-shell
index 364d2ac..6819aa6 100755
--- a/with-shell
+++ b/with-shell
@@ -1,3 +1,4 @@
#!/bin/sh
+
"$@"
exec "${SHELL:-sh}"