view tests/fixtures/emptyrepo2.sh @ 1134:a9b6e38d6dc9

util: add visitor pattern for scrubbing json These functions are for future patches that will add safer serialization via json. '_convert' is a visitor pattern that will be used for lists, dictionaries, and strings for helping convert None to the empty string since json forbids 'null' as a key for a dictionary. None -> '' is a safe mapping because this is for the 'branch_info' variable which already maps the empty string to None. Note, also, that json is chosen instead of, say, csv because json has a concept of 'null' and will better handle utf8 strings (which subversion supports). Important: this changes the requirement of hgsubversion to python 2.6+.
author Sean Farley <sean.michael.farley@gmail.com>
date Mon, 17 Feb 2014 11:10:38 -0600
parents f9014e28721b
children
line wrap: on
line source

#!/bin/sh
#
# Create emptyrepo2.svndump
#
# The generated repository contains a sequence of empty revisions
# created with a combination of svnsync and filtering

mkdir temp
cd temp

mkdir project-orig
cd project-orig
mkdir -p sub/trunk other
echo a > other/a
cd ..

svnadmin create testrepo
svnurl=file://`pwd`/testrepo
svn import project-orig $svnurl -m init

svn co $svnurl project
cd project
echo a >> other/a
svn ci -m othera
echo a >> other/a
svn ci -m othera2
echo b > sub/trunk/a
svn add sub/trunk/a
svn ci -m adda
cd ..

svnadmin create testrepo2
cat > testrepo2/hooks/pre-revprop-change <<EOF
#!/bin/sh
exit 0
EOF
chmod +x testrepo2/hooks/pre-revprop-change

svnurl2=file://`pwd`/testrepo2
svnsync init --username svnsync $svnurl2 $svnurl/sub
svnsync sync $svnurl2

svnadmin dump testrepo2 > ../emptyrepo2.svndump