diff options
author | tv <tv@nomic.retiolum> | 2014-03-14 04:54:15 +0100 |
---|---|---|
committer | tv <tv@nomic.retiolum> | 2014-03-14 04:54:15 +0100 |
commit | f92547a54d899216a4cd849ee515726824467765 (patch) | |
tree | a9c345ff9115df6d12a63bb812caa0461968af2d /git | |
parent | cb00aa8f64253085965bfc63aa8b1b2bb947449d (diff) |
RIP git-clone-into
Diffstat (limited to 'git')
-rwxr-xr-x | git/git-clone-into | 48 |
1 files changed, 0 insertions, 48 deletions
diff --git a/git/git-clone-into b/git/git-clone-into deleted file mode 100755 index 67e820e6..00000000 --- a/git/git-clone-into +++ /dev/null @@ -1,48 +0,0 @@ -#! /bin/sh -# -# usage: git-clone-into repository directory -# -set -euf - -tempdir() { - set -- `tempnam $1` - mkdir $1 - echo $1 -} - -## [prefix] -> tempnam -tempnam() { - until set -- $1 ${1-}`candnam` && ! test -e $2; do :; done - echo $2 -} - -candnam() { - uuidgen 2>/dev/null || date +%s%N -} - - - - tmp_remote=`candnam` - tmp_branch=`candnam` - - subdir=$2 - if test -e $subdir; then - echo 'You are made of stupid!' >&2 - exit 23 - fi - tmpdir=`tempdir /tmp/tempdir-` - #trap "test -d $tmpdir && rm -vfR $tmpdir" EXIT - trap "test -d $tmpdir && rm -fR $tmpdir" EXIT - repository="${1-$repository}" - git clone "$repository" $tmpdir - (cd $tmpdir - subdir="$subdir" git filter-branch --tree-filter ' - if ! test -d $subdir; then - mkdir -p $subdir - git ls-tree -z --name-only $GIT_COMMIT | xargs -I. --null mv . $subdir - fi - ' - git checkout -b $tmp_branch) - git remote add $tmp_remote $tmpdir - git fetch $tmp_remote - git merge $tmp_remote/$tmp_branch # TODO configurable branch |