Mercurial > hg
annotate tests/test-convert-cvs @ 6543:a6e2e60b34d0
convert: handle past or foreign partial svn copies
Subversion allows revisions to be composed of subparts coming from revisions
before the parent or from other part of the repository. There is no simple
representation for these now, keep the changes but do not track their origins.
author | Patrick Mezard <pmezard@gmail.com> |
---|---|
date | Mon, 14 Apr 2008 22:31:34 +0200 |
parents | 92444fa7190b |
children | 2011bb8ada9a |
rev | line source |
---|---|
5307
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
1 #!/bin/sh |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
2 |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
3 "$TESTDIR/hghave" cvs cvsps || exit 80 |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
4 |
5750
206b44764340
test-convert-cvs: force cvs -f options to avoid cvsrc
Patrick Mezard <pmezard@gmail.com>
parents:
5697
diff
changeset
|
5 cvscall() |
206b44764340
test-convert-cvs: force cvs -f options to avoid cvsrc
Patrick Mezard <pmezard@gmail.com>
parents:
5697
diff
changeset
|
6 { |
206b44764340
test-convert-cvs: force cvs -f options to avoid cvsrc
Patrick Mezard <pmezard@gmail.com>
parents:
5697
diff
changeset
|
7 cvs -f $@ |
206b44764340
test-convert-cvs: force cvs -f options to avoid cvsrc
Patrick Mezard <pmezard@gmail.com>
parents:
5697
diff
changeset
|
8 } |
206b44764340
test-convert-cvs: force cvs -f options to avoid cvsrc
Patrick Mezard <pmezard@gmail.com>
parents:
5697
diff
changeset
|
9 |
5307
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
10 echo "[extensions]" >> $HGRCPATH |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
11 echo "convert = " >> $HGRCPATH |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
12 |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
13 echo % create cvs repository |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
14 mkdir cvsrepo |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
15 cd cvsrepo |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
16 export CVSROOT=`pwd` |
5697
98f45e141567
convert: don't read ~/.cvsrc in test-convert-cvs
Maxim Dounin <mdounin@mdounin.ru>
parents:
5381
diff
changeset
|
17 export CVS_OPTIONS=-f |
5307
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
18 cd .. |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
19 |
5750
206b44764340
test-convert-cvs: force cvs -f options to avoid cvsrc
Patrick Mezard <pmezard@gmail.com>
parents:
5697
diff
changeset
|
20 cvscall -q -d "$CVSROOT" init |
5307
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
21 |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
22 echo % create source directory |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
23 mkdir src-temp |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
24 cd src-temp |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
25 echo a > a |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
26 mkdir b |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
27 cd b |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
28 echo c > c |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
29 cd .. |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
30 |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
31 echo % import source directory |
5750
206b44764340
test-convert-cvs: force cvs -f options to avoid cvsrc
Patrick Mezard <pmezard@gmail.com>
parents:
5697
diff
changeset
|
32 cvscall -q import -m import src INITIAL start |
5307
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
33 cd .. |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
34 |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
35 echo % checkout source directory |
5750
206b44764340
test-convert-cvs: force cvs -f options to avoid cvsrc
Patrick Mezard <pmezard@gmail.com>
parents:
5697
diff
changeset
|
36 cvscall -q checkout src |
5307
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
37 |
5381
6874368120dc
convert_cvs: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5364
diff
changeset
|
38 echo % commit a new revision changing b/c |
6874368120dc
convert_cvs: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5364
diff
changeset
|
39 cd src |
6342
92444fa7190b
tests: make test-convertcvs repeatable
Matt Mackall <mpm@selenic.com>
parents:
5921
diff
changeset
|
40 sleep 1 |
5381
6874368120dc
convert_cvs: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5364
diff
changeset
|
41 echo c >> b/c |
5750
206b44764340
test-convert-cvs: force cvs -f options to avoid cvsrc
Patrick Mezard <pmezard@gmail.com>
parents:
5697
diff
changeset
|
42 cvscall -q commit -mci0 . | grep '<--' |\ |
5381
6874368120dc
convert_cvs: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5364
diff
changeset
|
43 sed -e 's:.*src/\(.*\),v.*:checking in src/\1,v:g' |
6874368120dc
convert_cvs: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5364
diff
changeset
|
44 cd .. |
6874368120dc
convert_cvs: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5364
diff
changeset
|
45 |
5307
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
46 echo % convert fresh repo |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
47 hg convert src src-hg | sed -e 's/connecting to.*cvsrepo/connecting to cvsrepo/g' |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
48 cat src-hg/a |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
49 cat src-hg/b/c |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
50 |
5381
6874368120dc
convert_cvs: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5364
diff
changeset
|
51 echo % convert fresh repo with --filemap |
6874368120dc
convert_cvs: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5364
diff
changeset
|
52 echo include b/c > filemap |
6874368120dc
convert_cvs: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5364
diff
changeset
|
53 hg convert --filemap filemap src src-filemap | sed -e 's/connecting to.*cvsrepo/connecting to cvsrepo/g' |
6874368120dc
convert_cvs: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5364
diff
changeset
|
54 cat src-hg/b/c |
6874368120dc
convert_cvs: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5364
diff
changeset
|
55 hg -R src-filemap log --template '#rev# #desc# files: #files#\n' |
6874368120dc
convert_cvs: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5364
diff
changeset
|
56 |
5307
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
57 echo % commit new file revisions |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
58 cd src |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
59 echo a >> a |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
60 echo c >> b/c |
5750
206b44764340
test-convert-cvs: force cvs -f options to avoid cvsrc
Patrick Mezard <pmezard@gmail.com>
parents:
5697
diff
changeset
|
61 cvscall -q commit -mci1 . | grep '<--' |\ |
5364
645a40777fd4
test-convert-cvs: handle older cvs client
Christian Ebert <blacktrash@gmx.net>
parents:
5307
diff
changeset
|
62 sed -e 's:.*src/\(.*\),v.*:checking in src/\1,v:g' |
5307
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
63 cd .. |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
64 |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
65 echo % convert again |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
66 hg convert src src-hg | sed -e 's/connecting to.*cvsrepo/connecting to cvsrepo/g' |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
67 cat src-hg/a |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
68 cat src-hg/b/c |
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
69 |
5381
6874368120dc
convert_cvs: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5364
diff
changeset
|
70 echo % convert again with --filemap |
6874368120dc
convert_cvs: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5364
diff
changeset
|
71 hg convert --filemap filemap src src-filemap | sed -e 's/connecting to.*cvsrepo/connecting to cvsrepo/g' |
6874368120dc
convert_cvs: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5364
diff
changeset
|
72 cat src-hg/b/c |
6874368120dc
convert_cvs: add --filemap support
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5364
diff
changeset
|
73 hg -R src-filemap log --template '#rev# #desc# files: #files#\n' |
5307
5b0b0834419c
convert: test cvs repository conversion
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
74 |
5919
badf5711bd86
Test for converting a CVS branch
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5381
diff
changeset
|
75 echo % commit branch |
badf5711bd86
Test for converting a CVS branch
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5381
diff
changeset
|
76 cd src |
badf5711bd86
Test for converting a CVS branch
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5381
diff
changeset
|
77 cvs -q update -r1.1 b/c |
badf5711bd86
Test for converting a CVS branch
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5381
diff
changeset
|
78 cvs -q tag -b branch |
badf5711bd86
Test for converting a CVS branch
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5381
diff
changeset
|
79 cvs -q update -r branch |
badf5711bd86
Test for converting a CVS branch
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5381
diff
changeset
|
80 echo d >> b/c |
badf5711bd86
Test for converting a CVS branch
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5381
diff
changeset
|
81 cvs -q commit -mci2 . | grep '<--' |\ |
badf5711bd86
Test for converting a CVS branch
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5381
diff
changeset
|
82 sed -e 's:.*src/\(.*\),v.*:checking in src/\1,v:g' |
badf5711bd86
Test for converting a CVS branch
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5381
diff
changeset
|
83 cd .. |
badf5711bd86
Test for converting a CVS branch
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5381
diff
changeset
|
84 |
badf5711bd86
Test for converting a CVS branch
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5381
diff
changeset
|
85 echo % convert again |
badf5711bd86
Test for converting a CVS branch
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5381
diff
changeset
|
86 hg convert src src-hg | sed -e 's/connecting to.*cvsrepo/connecting to cvsrepo/g' |
badf5711bd86
Test for converting a CVS branch
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5381
diff
changeset
|
87 cat src-hg/a |
badf5711bd86
Test for converting a CVS branch
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5381
diff
changeset
|
88 cat src-hg/b/c |
badf5711bd86
Test for converting a CVS branch
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5381
diff
changeset
|
89 |
badf5711bd86
Test for converting a CVS branch
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5381
diff
changeset
|
90 echo % convert again with --filemap |
badf5711bd86
Test for converting a CVS branch
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5381
diff
changeset
|
91 hg convert --filemap filemap src src-filemap | sed -e 's/connecting to.*cvsrepo/connecting to cvsrepo/g' |
badf5711bd86
Test for converting a CVS branch
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5381
diff
changeset
|
92 cat src-hg/b/c |
badf5711bd86
Test for converting a CVS branch
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5381
diff
changeset
|
93 hg -R src-filemap log --template '#rev# #desc# files: #files#\n' |
badf5711bd86
Test for converting a CVS branch
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5381
diff
changeset
|
94 |
badf5711bd86
Test for converting a CVS branch
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5381
diff
changeset
|
95 echo "graphlog = " >> $HGRCPATH |
badf5711bd86
Test for converting a CVS branch
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5381
diff
changeset
|
96 hg -R src-hg glog --template '#rev# (#branches#) #desc# files: #files#\n' |