##// END OF EJS Templates
test-convert-cvsnt-mergepoints: ignore differences between CVS 1.11 and 1.12....
Greg Ward -
r8819:e93ab347 default
parent child Browse files
Show More
@@ -1,80 +1,99 b''
1 1 #!/bin/sh
2 2
3 3 "$TESTDIR/hghave" cvs || exit 80
4 4
5 filterpath()
6 {
7 eval "$@" | sed "s:$CVSROOT:*REPO*:g"
8 }
9
5 10 cvscall()
6 11 {
12 echo cvs -f "$@"
7 13 cvs -f "$@"
8 14 }
9 15
16 # output of 'cvs ci' varies unpredictably, so discard most of it
17 # -- just keep the part that matters
18 cvsci()
19 {
20 echo cvs -f ci "$@"
21 cvs -f ci "$@" 2>&1 | egrep "^(new|initial) revision:"
22 }
23
10 24 hgcat()
11 25 {
12 26 hg --cwd src-hg cat -r tip "$1"
13 27 }
14 28
15 29 echo "[extensions]" >> $HGRCPATH
16 30 echo "convert = " >> $HGRCPATH
17 31 echo "graphlog = " >> $HGRCPATH
18 32 echo "[convert]" >> $HGRCPATH
19 33 echo "cvsps=builtin" >> $HGRCPATH
20 34
21 echo % create cvs repository
35 echo "% create cvs repository"
22 36 mkdir cvsmaster
23 37 cd cvsmaster
24 38 CVSROOT=`pwd`
25 39 export CVSROOT
26 40 CVS_OPTIONS=-f
27 41 export CVS_OPTIONS
28 42 cd ..
43 filterpath cvscall -Q -d "$CVSROOT" init
29 44
30 cvscall -q -d "$CVSROOT" init
31
32 cvscall -q checkout -d cvsworktmp .
45 echo "% checkout #1: add foo.txt"
46 cvscall -Q checkout -d cvsworktmp .
33 47 cd cvsworktmp
34 48 mkdir foo
35 cvscall -q add foo | sed -e 's/Directory .* added to the repository//g'
49 cvscall -Q add foo
36 50 cd foo
37 51 echo foo > foo.txt
38 cvscall -q add foo.txt
39 cvscall -q ci -m "foo.txt" | sed 's/.*,v.*/checking in/g'
52 cvscall -Q add foo.txt
53 cvsci -m "foo.txt"
40 54
41 55 cd ../..
42 56 rm -rf cvsworktmp
43 57
44 cvscall -q checkout -d cvswork foo
58 echo "% checkout #2: create MYBRANCH1 and modify foo.txt on it"
59 cvscall -Q checkout -d cvswork foo
45 60
46 61 cd cvswork
47 62
48 63 cvscall -q rtag -b -R MYBRANCH1 foo
49 cvscall -q up -P -r MYBRANCH1
64 cvscall -Q update -P -r MYBRANCH1
50 65 echo bar > foo.txt
51 cvscall -q ci -m "bar" | sed 's/.*,v.*/checking in/g'
66 cvsci -m "bar"
52 67 echo baz > foo.txt
53 cvscall -q ci -m "baz" | sed 's/.*,v.*/checking in/g'
68 cvsci -m "baz"
54 69
70 echo "% create MYBRANCH1_2 and modify foo.txt some more"
55 71 cvscall -q rtag -b -R -r MYBRANCH1 MYBRANCH1_2 foo
56 cvscall -q up -P -r MYBRANCH1_2
72 cvscall -Q update -P -r MYBRANCH1_2
57 73
58 74 echo bazzie > foo.txt
59 cvscall -q ci -m "bazzie" | sed 's/.*,v.*/checking in/g'
75 cvsci -m "bazzie"
60 76
77 echo "% create MYBRANCH1_1 and modify foo.txt yet again"
61 78 cvscall -q rtag -b -R MYBRANCH1_1 foo
62 cvscall -q up -P -r MYBRANCH1_1
79 cvscall -Q update -P -r MYBRANCH1_1
63 80
64 81 echo quux > foo.txt
65 cvscall -q ci -m "quux" | sed 's/.*,v.*/checking in/g'
66 cvscall -q up -P -jMYBRANCH1 | sed 's/RCS file: .*,v/merging MYBRANCH1/g'
67 echo xyzzy > foo.txt
68 cvscall -q ci -m "merge" | sed 's/.*,v.*/checking in/g'
82 cvsci -m "quux"
69 83
70 cvscall -q up -P -A
84 echo "% merge MYBRANCH1 to MYBRANCH1_1"
85 filterpath cvscall -Q update -P -jMYBRANCH1
86 echo xyzzy > foo.txt
87 cvsci -m "merge1"
71 88
72 cvscall -q up -P -jMYBRANCH1_2 | sed 's/RCS file: .*,v/merging MYBRANCH1_2/g'
73 cvscall -q ci -m "merge" | sed 's/.*,v.*/checking in/g'
89 echo "% return to trunk and merge MYBRANCH1_2"
90 cvscall -Q update -P -A
91 filterpath cvscall -Q update -P -jMYBRANCH1_2
92 cvsci -m "merge2"
74 93
75 94 REALCVS=`which cvs`
76 95 echo "for x in \$*; do if [ \"\$x\" = \"rlog\" ]; then echo \"RCS file: $CVSROOT/foo/foo.txt,v\"; cat $TESTDIR/test-convert-cvsnt-mergepoints.rlog; exit 0; fi; done; $REALCVS \$*" > cvs
77 96 chmod +x cvs
78 97 PATH=.:${PATH} hg debugcvsps --parents foo | sed -e 's/Author:.*/Author:/' -e 's/Date:.*/Date:/'
79 98
80 99 cd ..
@@ -1,140 +1,140 b''
1 1 % create cvs repository
2 U cvsworktmp/CVSROOT/checkoutlist
3 U cvsworktmp/CVSROOT/commitinfo
4 U cvsworktmp/CVSROOT/config
5 U cvsworktmp/CVSROOT/cvswrappers
6 U cvsworktmp/CVSROOT/loginfo
7 U cvsworktmp/CVSROOT/modules
8 U cvsworktmp/CVSROOT/notify
9 U cvsworktmp/CVSROOT/postadmin
10 U cvsworktmp/CVSROOT/postproxy
11 U cvsworktmp/CVSROOT/posttag
12 U cvsworktmp/CVSROOT/postwatch
13 U cvsworktmp/CVSROOT/preproxy
14 U cvsworktmp/CVSROOT/rcsinfo
15 U cvsworktmp/CVSROOT/taginfo
16 U cvsworktmp/CVSROOT/verifymsg
17
18 cvs add: use `cvs commit' to add this file permanently
19 checking in
2 cvs -f -Q -d *REPO* init
3 % checkout #1: add foo.txt
4 cvs -f -Q checkout -d cvsworktmp .
5 cvs -f -Q add foo
6 cvs -f -Q add foo.txt
7 cvs -f ci -m foo.txt
20 8 initial revision: 1.1
21 U cvswork/foo.txt
22 checking in
9 % checkout #2: create MYBRANCH1 and modify foo.txt on it
10 cvs -f -Q checkout -d cvswork foo
11 cvs -f -q rtag -b -R MYBRANCH1 foo
12 cvs -f -Q update -P -r MYBRANCH1
13 cvs -f ci -m bar
23 14 new revision: 1.1.2.1; previous revision: 1.1
24 checking in
15 cvs -f ci -m baz
25 16 new revision: 1.1.2.2; previous revision: 1.1.2.1
26 checking in
17 % create MYBRANCH1_2 and modify foo.txt some more
18 cvs -f -q rtag -b -R -r MYBRANCH1 MYBRANCH1_2 foo
19 cvs -f -Q update -P -r MYBRANCH1_2
20 cvs -f ci -m bazzie
27 21 new revision: 1.1.2.2.2.1; previous revision: 1.1.2.2
28 U foo.txt
29 checking in
22 % create MYBRANCH1_1 and modify foo.txt yet again
23 cvs -f -q rtag -b -R MYBRANCH1_1 foo
24 cvs -f -Q update -P -r MYBRANCH1_1
25 cvs -f ci -m quux
30 26 new revision: 1.1.4.1; previous revision: 1.1
27 % merge MYBRANCH1 to MYBRANCH1_1
31 28 rcsmerge: warning: conflicts during merge
32 merging MYBRANCH1
29 cvs -f -Q update -P -jMYBRANCH1
30 RCS file: *REPO*/foo/foo.txt,v
33 31 retrieving revision 1.1
34 32 retrieving revision 1.1.2.2
35 33 Merging differences between 1.1 and 1.1.2.2 into foo.txt
36 checking in
34 cvs -f ci -m merge1
37 35 new revision: 1.1.4.2; previous revision: 1.1.4.1
38 U foo.txt
39 merging MYBRANCH1_2
36 % return to trunk and merge MYBRANCH1_2
37 cvs -f -Q update -P -A
38 cvs -f -Q update -P -jMYBRANCH1_2
39 RCS file: *REPO*/foo/foo.txt,v
40 40 retrieving revision 1.1
41 41 retrieving revision 1.1.2.2.2.1
42 42 Merging differences between 1.1 and 1.1.2.2.2.1 into foo.txt
43 checking in
43 cvs -f ci -m merge2
44 44 new revision: 1.2; previous revision: 1.1
45 45 collecting CVS rlog
46 46 7 log entries
47 47 creating changesets
48 48 7 changeset entries
49 49 ---------------------
50 50 PatchSet 1
51 51 Date:
52 52 Author:
53 53 Branch: HEAD
54 54 Tag: (none)
55 55 Branchpoints: MYBRANCH1_1, MYBRANCH1
56 56 Log:
57 57 foo.txt
58 58
59 59 Members:
60 60 foo.txt:INITIAL->1.1
61 61
62 62 ---------------------
63 63 PatchSet 2
64 64 Date:
65 65 Author:
66 66 Branch: MYBRANCH1
67 67 Tag: (none)
68 68 Parent: 1
69 69 Log:
70 70 bar
71 71
72 72 Members:
73 73 foo.txt:1.1->1.1.2.1
74 74
75 75 ---------------------
76 76 PatchSet 3
77 77 Date:
78 78 Author:
79 79 Branch: MYBRANCH1
80 80 Tag: (none)
81 81 Branchpoints: MYBRANCH1_2
82 82 Parent: 2
83 83 Log:
84 84 baz
85 85
86 86 Members:
87 87 foo.txt:1.1.2.1->1.1.2.2
88 88
89 89 ---------------------
90 90 PatchSet 4
91 91 Date:
92 92 Author:
93 93 Branch: MYBRANCH1_1
94 94 Tag: (none)
95 95 Parent: 1
96 96 Log:
97 97 quux
98 98
99 99 Members:
100 100 foo.txt:1.1->1.1.4.1
101 101
102 102 ---------------------
103 103 PatchSet 5
104 104 Date:
105 105 Author:
106 106 Branch: MYBRANCH1_2
107 107 Tag: (none)
108 108 Parent: 3
109 109 Log:
110 110 bazzie
111 111
112 112 Members:
113 113 foo.txt:1.1.2.2->1.1.2.2.2.1
114 114
115 115 ---------------------
116 116 PatchSet 6
117 117 Date:
118 118 Author:
119 119 Branch: HEAD
120 120 Tag: (none)
121 121 Parents: 1,5
122 122 Log:
123 123 merge
124 124
125 125 Members:
126 126 foo.txt:1.1->1.2
127 127
128 128 ---------------------
129 129 PatchSet 7
130 130 Date:
131 131 Author:
132 132 Branch: MYBRANCH1_1
133 133 Tag: (none)
134 134 Parents: 4,3
135 135 Log:
136 136 merge
137 137
138 138 Members:
139 139 foo.txt:1.1.4.1->1.1.4.2
140 140
General Comments 0
You need to be logged in to leave comments. Login now