view tests/fixtures/siblingbranchfix.sh @ 762:c31a1f92e1c6

svnexternals: preliminary support for subrepos based externals At this point, only pulling externals definitions into .hgsub and .hgsubstate is supported. One difference between subrepos and svn:externals is the former separate the source definition and target revision in two files, while svn:externals definitions contain both. To handle this, the svn:externals revision references is replaced with a {REV} placeholder and stored in .hgsub, prefixed with the external base directory separated with a ':', while the revision is extracted in .hgsubstate. For instance, the following external: -r3 ^/externals/proj2@2 deps/proj2 Becomes: (.hgsub) deps/proj2 = [hgsubversion] :-r{REV} ^/externals/proj2@2 deps/proj2 (.hgsubstate) 3 deps/proj2
author Patrick Mezard <pmezard@gmail.com>
date Thu, 25 Nov 2010 21:55:21 +0100
parents 41c333473dda
children
line wrap: on
line source

#!/bin/sh

mkdir temp
cd temp
svnadmin create repo
svn co file://`pwd`/repo wc
cd wc
mkdir branches trunk tags
svn add *
svn ci -m 'btt'
cd trunk

echo a > a
svn add a
svn ci -m 'Add file.'
svn up

cd ..
svn cp trunk wrongbranch
svn ci -m 'Branch to repo root dir.'
svn up

svn mv wrongbranch branches/wrongbranch
svn ci -m 'Move branch to correct branches location'
svn up

cd ../..
svnadmin dump temp/repo > siblingbranchfix.svndump
echo
echo 'Complete.'
echo 'You probably want to clean up temp now.'
echo 'Dump in siblingbranchfix.svndump'
exit 0