Mercurial > hgsubversion
annotate tests/fixtures/emptyrepo2.sh @ 947:e1cb98792cf4
editor: do not reread all data upon branching
Branch creation is a special case of add_directory(). Until now, it was
handled by enumerating branch parent files and creating svncopy records
which were later converted into open files or pushed into the
RevisionData. By default, there is no reason to record anything, the
files are the same than in the parent changeset. The tricky part is to
correctly check the source is the parent revision. This change massively
speeds up regular branching operations.
author | Patrick Mezard <patrick@mezard.eu> |
---|---|
date | Tue, 16 Oct 2012 08:47:01 +0200 |
parents | f9014e28721b |
children |
rev | line source |
---|---|
938
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
1 #!/bin/sh |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
2 # |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
3 # Create emptyrepo2.svndump |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
4 # |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
5 # The generated repository contains a sequence of empty revisions |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
6 # created with a combination of svnsync and filtering |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
7 |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
8 mkdir temp |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
9 cd temp |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
10 |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
11 mkdir project-orig |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
12 cd project-orig |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
13 mkdir -p sub/trunk other |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
14 echo a > other/a |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
15 cd .. |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
16 |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
17 svnadmin create testrepo |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
18 svnurl=file://`pwd`/testrepo |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
19 svn import project-orig $svnurl -m init |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
20 |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
21 svn co $svnurl project |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
22 cd project |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
23 echo a >> other/a |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
24 svn ci -m othera |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
25 echo a >> other/a |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
26 svn ci -m othera2 |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
27 echo b > sub/trunk/a |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
28 svn add sub/trunk/a |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
29 svn ci -m adda |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
30 cd .. |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
31 |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
32 svnadmin create testrepo2 |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
33 cat > testrepo2/hooks/pre-revprop-change <<EOF |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
34 #!/bin/sh |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
35 exit 0 |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
36 EOF |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
37 chmod +x testrepo2/hooks/pre-revprop-change |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
38 |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
39 svnurl2=file://`pwd`/testrepo2 |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
40 svnsync init --username svnsync $svnurl2 $svnurl/sub |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
41 svnsync sync $svnurl2 |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
42 |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
43 svnadmin dump testrepo2 > ../emptyrepo2.svndump |
f9014e28721b
editor: start separating svn copies from open files
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
44 |