diff options
author | Erich Eckner <git@eckner.net> | 2020-07-01 09:58:47 +0200 |
---|---|---|
committer | Erich Eckner <git@eckner.net> | 2020-07-01 09:58:47 +0200 |
commit | dfa1bb4e5dec5bc3c8e49b842bec28feec560a0b (patch) | |
tree | 22bc191d42965ad182b55d4eb6aea1c0f4abb8f9 | |
parent | 85b289069a9a8a8c92c9644ebdef6a59cf3afffb (diff) | |
download | git-inverse-archive-dfa1bb4e5dec5bc3c8e49b842bec28feec560a0b.tar.xz |
soweit funktionstüchtig
-rwxr-xr-x | git-inverse-archive | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/git-inverse-archive b/git-inverse-archive index c4b2ec7..91122bf 100755 --- a/git-inverse-archive +++ b/git-inverse-archive @@ -12,12 +12,24 @@ if [ $# -ne 1 ] || [ ! -d "${git_dir}" ]; then exit 1 fi +tar_ball="$1" + 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 +git clone -q "${git_dir}" . || exit $? +git checkout -q $(git -C "${git_dir}" rev-parse HEAD) || exit $? +git clean -qxdf . +git archive HEAD \ +| tar -t \ +| xargs -r rm + +bsdtar -C "${tmp_dir}" -xf "${tar_ball}" --strip-components 1 || exit $? + +tar_ball="${tar_ball##*/}" -#bsdtar -C "${tmp_dir}" -xf "$1" --strip-components 1 -find "${tmp_dir}" +git add . +git commit -qm "${tar_ball}" +git checkout -b "${tar_ball%.tar*}" +git push --set-upstream origin "${tar_ball%.tar*}" |