X-Git-Url: https://sipb.mit.edu/gitweb.cgi/ikiwiki.git/blobdiff_plain/491847ed5311123b3ce58c636451c56a2a0f191b..e8ff29fa330aef5e8d30eeef44218b87c4a9d97e:/ikiwiki-makerepo diff --git a/ikiwiki-makerepo b/ikiwiki-makerepo index a6999cb4a..6ae3e28a3 100755 --- a/ikiwiki-makerepo +++ b/ikiwiki-makerepo @@ -7,7 +7,7 @@ repository="$3" usage () { echo "usage: ikiwiki-makerepo svn|git srcdir repository" >&2 - echo " ikiwiki-makerepo mercurial srcdir" >&2 + echo " ikiwiki-makerepo bzr|mercurial srcdir" >&2 exit 1 } @@ -20,12 +20,12 @@ if [ ! -d "$srcdir" ]; then exit 1 fi -if [ "$rcs" != mercurial ]; then +if [ "$rcs" != mercurial ] && [ "$rcs" != bzr ]; then if [ -e "$repository" ]; then echo "repository $repository already exists, aborting" >&2 exit 1 fi - repository="$(perl -e 'use Cwd q{abs_path}; print abs_path(shift)' $repository)" + repository="$(perl -e 'use Cwd q{abs_path}; $r=shift; $r=~s/\/*$//; print abs_path($r)' $repository)" if [ -z "$repository" ]; then echo "internal error finding repository abs_path" >&2 exit 1 @@ -50,7 +50,11 @@ svn) echo "Directory $srcdir is now a checkout of $rcs repository $repository" ;; git) - GIT_DIR="$repository" git --bare init --shared + # There are better ways to do this, but this works with older + # versions of git.) + mkdir -p "$repository" + (cd "$repository" && git --bare init --shared) + cd "$srcdir" git init echo /.ikiwiki > .gitignore @@ -58,6 +62,7 @@ git) git commit -m "initial commit" git remote add origin "$repository" git config branch.master.merge refs/heads/master + git config branch.master.remote origin git push --all echo "Directory $srcdir is now a clone of $rcs repository $repository" ;; @@ -69,6 +74,14 @@ mercurial) hg commit -m "initial import" echo "Directory $srcdir is now set up as a mercurial repository" ;; +bzr) + bzr init "$srcdir" + cd "$srcdir" + echo .ikiwiki > .bzrignore + bzr add * .bzrignore + bzr commit -m "initial import" + echo "Directory $srcdir is now set up as a bzr repository" +;; *) echo "Unsupported revision control system $rcs" >&2 usage