summaryrefslogtreecommitdiffstats
path: root/git
diff options
context:
space:
mode:
authortv <tv@nomic.retiolum>2014-03-14 04:54:15 +0100
committertv <tv@nomic.retiolum>2014-03-14 04:54:15 +0100
commitf92547a54d899216a4cd849ee515726824467765 (patch)
treea9c345ff9115df6d12a63bb812caa0461968af2d /git
parentcb00aa8f64253085965bfc63aa8b1b2bb947449d (diff)
RIP git-clone-into
Diffstat (limited to 'git')
-rwxr-xr-xgit/git-clone-into48
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