rename git-clone.sh to git-clone-svn.sh
[infrastructure.git] / scripts / git-clone-svn.sh
diff --git a/scripts/git-clone-svn.sh b/scripts/git-clone-svn.sh
new file mode 100755 (executable)
index 0000000..bdd86f6
--- /dev/null
@@ -0,0 +1,37 @@
+#!/bin/bash
+
+# uses svn2git ruby script
+# install rubygems 
+# sudo gem install svn2git --source http://gemcutter.org
+
+#http provides really crappy performance....
+#SVNROOT="http://svn.planet-lab.org/svn"
+# so run locally at princeton
+SVNROOT="file:///svn"
+
+function clone () {
+    for arg in "$@" ; do
+       SVN_MODULE=$(basename $arg)
+       echo "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx converting module $SVN_MODULE in $(pwd)"
+       SVN_PATH=${SVNROOT}/${SVN_MODULE}
+       GIT_WORKDIR=$(echo $SVN_MODULE | sed 's/.*/\L&/')
+        GIT_REPO=${GIT_WORKDIR}.git
+
+       rm -rf $GIT_WORKDIR
+        rm -rf $GIT_REPO
+
+       mkdir -p $GIT_WORKDIR
+       pushd $GIT_WORKDIR
+       svn2git $SVN_PATH
+       popd
+
+        mv ${GIT_WORKDIR}/.git ${GIT_REPO}
+        rm -rf ${GIT_WORKDIR}
+
+    done
+}
+
+args="$@"
+[[ -z "$args" ]] && args=$(ls /svn)
+
+clone $args