1#!/bin/sh 2# 3# Use this script to generate branches.svndump 4# 5 6mkdir temp 7cd temp 8 9mkdir project-orig 10cd project-orig 11mkdir trunk 12mkdir branches 13cd .. 14 15svnadmin create svn-repo 16svnurl=file://`pwd`/svn-repo 17svn import project-orig $svnurl -m "init projA" 18 19svn co $svnurl project 20cd project 21echo a > trunk/a 22echo b > trunk/b 23echo c > trunk/c 24mkdir trunk/dir 25echo e > trunk/dir/e 26# Add a file within branches, used to confuse branch detection 27echo d > branches/notinbranch 28svn add trunk/a trunk/b trunk/c trunk/dir branches/notinbranch 29svn ci -m hello 30svn up 31 32# Branch to old 33svn copy trunk branches/old 34svn rm branches/old/c 35svn rm branches/old/dir 36svn ci -m "branch trunk, remove c and dir" 37svn up 38 39# Update trunk 40echo a >> trunk/a 41svn ci -m "change a" 42 43# Update old branch 44echo b >> branches/old/b 45svn ci -m "change b" 46 47# Create a cross-branch revision 48svn move trunk/b branches/old/c 49echo c >> branches/old/c 50svn ci -m "move and update c" 51 52# Update old branch again 53echo b >> branches/old/b 54svn ci -m "change b again" 55 56# Move back and forth between branch of similar names 57# This used to generate fake copy records 58svn up 59svn move branches/old branches/old2 60svn ci -m "move to old2" 61svn move branches/old2 branches/old 62svn ci -m "move back to old" 63 64# Update trunk again 65echo a > trunk/a 66svn ci -m "last change to a" 67 68# Branch again from a converted revision 69svn copy -r 1 $svnurl/trunk branches/old3 70svn ci -m "branch trunk@1 into old3" 71cd .. 72 73svnadmin dump svn-repo > ../branches.svndump 74