Mercurial > hgsubversion
view tests/fixtures/mergeexternals.sh @ 1453:d890d8d4e168
svnrepo: change svnurl to not use self.svn
Before this patch, svnremoterepo uses self.svn.svn_url to answer svnurl.
Accessing svnremoterepo.svn will create an svn ra object, which can be
expensive because it involves network i/o.
This patch changes it to use self.svnauth, which is a local operation.
It speeds up "hg svn info" a lot.
The old behavior is hard to test since instantiating a svn ra object
requires a real URL. The change does not seem worth to set up SSH and
HTTP servers to test. Therefore the tests are added only for the new
behavior.
author | Jun Wu <quark@fb.com> |
---|---|
date | Sat, 11 Jun 2016 22:36:57 +0100 |
parents | ba65c0b01d4f |
children |
line wrap: on
line source
#!/bin/sh # # Generate mergeexternals.svndump # mkdir temp cd temp mkdir project-orig cd project-orig mkdir trunk mkdir branches cd .. svnadmin create testrepo svnurl=file://`pwd`/testrepo svn import project-orig $svnurl -m "init project" svn co $svnurl project cd project/trunk mkdir d1 echo a > d1/a mkdir d2 echo b > d2/b mkdir -p common/ext echo c > common/ext/c svn add d1 d2 common svn ci -m addfiles svn up svn propset svn:externals '^/trunk/common/ext ext' d1 svn propset svn:externals '^/trunk/common/ext ext' d2 svn ci -m addexternals cd .. svn up svn cp trunk branches/branch cd branches svn ci -m addbranch cd branch mkdir d3 echo d > d3/d svn add d3 svn propset svn:externals '^/trunk/common/ext ext3' d3 svn ci -m touchbranch cd ../../trunk svn merge '^/branches/branch' svn up svn ci -m 'merge' cd ../.. svnadmin dump testrepo > ../mergeexternals.svndump