bzr_update = bzr pull "$@" lib = checkout_hack_branch() { git clone --no-checkout --origin $2 $3 $1 cd $1 git checkout -b $2 $2/${5:-master} git branch -D master >/dev/null git remote add origin $4 if git fetch origin 2>/dev/null; then git checkout -b master origin/master else git checkout -b master $2/${5:-master} case "$4" in ssh://*) host=${4#*//} path=${host#*/} host=${host%%/*} ssh $host "[ -d $path ] || GIT_DIR=$path git --bare init --shared=world" ;; esac git push origin --all fi } [code/mr] checkout = checkout_hack_branch mr \ joeyh git://git.kitenet.net/mr \ ssh://git.madduck.net/~/git/pub/code/mr.git ln -s ../code/mr/mr ~/.bin/mr