view tests/fixtures/replace_branch_with_branch.sh @ 680:703f33576ad8

svnwrap: add runtime override for choice of Subversion bindings By setting the `HGSUBVERSION_BINDINGS environment variable to either `SWIG' or `Subvertpy', the choice of bindings can be forced at runtime. (For ease of use, the comparison is case-insensitive.) Examples: % HGSUBVERSION_BINDINGS=swig hg version --svn Mercurial Distributed SCM (version 1.6+172-b25e1ced9861) ... hgsubversion: 1.1.2+43-276742da2d85 Subversion: 1.6.12 bindings: SWIG % HGSUBVERSION_BINDINGS=subvertpy hg version --svn Mercurial Distributed SCM (version 1.6+172-b25e1ced9861) ... hgsubversion: 1.1.2+43-276742da2d85 Subversion: 1.6.12 bindings: Subvertpy 0.7.4 % HGSUBVERSION_BINDINGS=none hg version --svn Mercurial Distributed SCM (version 1.6+172-b25e1ced9861) ... abort: cannot use hgsubversion; bindings disabled using HGSUBVERSION_BINDINGS!
author Dan Villiom Podlaski Christiansen <danchr@gmail.com>
date Wed, 11 Aug 2010 20:03:47 +0200
parents 2723152c8111
children
line wrap: on
line source

#!/bin/sh

RSVN="`pwd`/rsvn.py"
export PATH=/bin:/usr/bin
mkdir temp
cd temp

svnadmin create repo
svn co file://`pwd`/repo wc

cd wc
mkdir trunk branches
cd trunk
echo a > a
cd ..
svn add *
svn ci -m 'initial'

svn up
svn cp trunk branches/branch1
svn ci -m 'branch1'
svn up
echo b > branches/branch1/b
echo d > branches/branch1/d
mkdir branches/branch1/dir
echo e > branches/branch1/dir/e
echo f > branches/branch1/f
echo g > branches/branch1/g
svn add branches/branch1/b branches/branch1/d branches/branch1/dir \
    branches/branch1/f branches/branch1/g
svn ci -m 'add b to branch1'
svn cp trunk branches/branch2
svn ci -m 'branch2'
svn up
echo c > branches/branch2/c
mkdir branches/branch2/dir
echo e2 > branches/branch2/dir/e
echo f2 > branches/branch2/f
svn add branches/branch2/c branches/branch2/dir branches/branch2/f
svn ci -m 'add c to branch2'
svn up

# Clobber branch1 with branch2
cd ..
cat > clobber.rsvn <<EOF
rdelete branches/branch1
rcopy branches/branch2 branches/branch1
rcopy branches/branch1/d branches/branch1/a
rcopy branches/branch1/dir branches/branch1/dir
rcopy branches/branch1/dir branches/branch1/dir2
rcopy branches/branch1/f branches/branch1/f
rcopy branches/branch1/g branches/branch1/g
EOF

python $RSVN --message=blah --username=evil `pwd`/repo < clobber.rsvn

svnadmin dump repo > ../replace_branch_with_branch.svndump