annotate tests/svn/svndump-move.sh @ 7475:90d8dfb481e7

Rewrite svn tests using svndump They are: - faster to run (12s vs 30s in test-convert-svn-branches case) - easier to craft - easier to debug - more portable
author Patrick Mezard <pmezard@gmail.com>
date Sat, 06 Dec 2008 20:07:44 +0100
parents
children 8b603c7c808e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
7475
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
1 #!/bin/sh
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
2 #
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
3 # Use this script to generate move.svndump
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
4 #
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
5
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
6 mkdir temp
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
7 cd temp
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
8
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
9 mkdir project-orig
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
10 cd project-orig
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
11 mkdir trunk
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
12 echo a > trunk/a
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
13 mkdir trunk/d1
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
14 mkdir trunk/d2
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
15 echo b > trunk/d1/b
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
16 echo c > trunk/d1/c
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
17 echo d > trunk/d2/d
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
18 cd ..
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
19
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
20 svnadmin create svn-repo
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
21 svnurl=file://`pwd`/svn-repo
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
22 svn import project-orig $svnurl -m "init projA"
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
23
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
24 svn co $svnurl project
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
25 cd project
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
26 # Build a module renaming chain which used to confuse the converter.
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
27 # Update svn repository
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
28 echo a >> trunk/a
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
29 echo c >> trunk/d1/c
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
30 svn ci -m commitbeforemove
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
31 svn mv $svnurl/trunk $svnurl/subproject -m movedtrunk
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
32 svn up
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
33 mkdir subproject/trunk
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
34 svn add subproject/trunk
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
35 svn ci -m createtrunk
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
36 mkdir subproject/branches
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
37 svn add subproject/branches
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
38 svn ci -m createbranches
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
39 svn mv $svnurl/subproject/d1 $svnurl/subproject/trunk/d1 -m moved1
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
40 svn mv $svnurl/subproject/d2 $svnurl/subproject/trunk/d2 -m moved2
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
41 svn up
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
42 echo b >> subproject/trunk/d1/b
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
43
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
44 svn rm subproject/trunk/d2
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
45 svn ci -m "changeb and rm d2"
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
46 svn mv $svnurl/subproject/trunk/d1 $svnurl/subproject/branches/d1 -m moved1again
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
47
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
48 if svn help copy | grep 'SRC\[@REV\]' > /dev/null 2>&1; then
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
49 # SVN >= 1.5 replaced the -r REV syntax with @REV
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
50 # Copy a file from a past revision
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
51 svn copy $svnurl/subproject/trunk/d2/d@7 $svnurl/subproject/trunk -m copyfilefrompast
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
52 # Copy a directory from a past revision
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
53 svn copy $svnurl/subproject/trunk/d2@7 $svnurl/subproject/trunk -m copydirfrompast
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
54 else
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
55 # Copy a file from a past revision
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
56 svn copy -r 7 $svnurl/subproject/trunk/d2/d $svnurl/subproject/trunk -m copyfilefrompast
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
57 # Copy a directory from a past revision
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
58 svn copy -r 7 $svnurl/subproject/trunk/d2 $svnurl/subproject/trunk -m copydirfrompast
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
59 fi
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
60 cd ..
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
61
90d8dfb481e7 Rewrite svn tests using svndump
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
62 svnadmin dump svn-repo > ../move.svndump