Mercurial > hgsubversion
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