diff options
author | Erich Eckner <git@eckner.net> | 2020-07-01 09:49:43 +0200 |
---|---|---|
committer | Erich Eckner <git@eckner.net> | 2020-07-01 09:49:43 +0200 |
commit | 85b289069a9a8a8c92c9644ebdef6a59cf3afffb (patch) | |
tree | 955a1e047e58cd07892dd5c677990d661d11a131 | |
download | git-inverse-archive-85b289069a9a8a8c92c9644ebdef6a59cf3afffb.tar.xz |
ein Anfang
-rwxr-xr-x | git-inverse-archive | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/git-inverse-archive b/git-inverse-archive new file mode 100755 index 0000000..c4b2ec7 --- /dev/null +++ b/git-inverse-archive @@ -0,0 +1,23 @@ +#!/bin/bash + +if [ "x$1" = 'x-C' ]; then + git_dir=$(readlink -e "$2") + shift 2 +else + git_dir=$(pwd) +fi + +if [ $# -ne 1 ] || [ ! -d "${git_dir}" ]; then + printf 'usage: %s [-C /dir/ec/to/ry] archive.tar\n' "${0##*/}" + exit 1 +fi + +tmp_dir=$(mktemp -d) +trap 'cd /; rm -rf --one-file-system "${tmp_dir}"' EXIT + +cd "${tmp_dir}" +git clone "${git_dir}" . +git -C "${git_dir}" rev-parse HEAD + +#bsdtar -C "${tmp_dir}" -xf "$1" --strip-components 1 +find "${tmp_dir}" |