##// END OF EJS Templates
tests: improve test coverage for discovery and actual parameters for pulling
Mads Kiilerich -
r22181:851db07b stable
parent child Browse files
Show More
@@ -1,327 +1,353
1
1
2 Function to test discovery between two repos in both directions, using both the local shortcut
2 Function to test discovery between two repos in both directions, using both the local shortcut
3 (which is currently not activated by default) and the full remotable protocol:
3 (which is currently not activated by default) and the full remotable protocol:
4
4
5 $ testdesc() { # revs_a, revs_b, dagdesc
5 $ testdesc() { # revs_a, revs_b, dagdesc
6 > if [ -d foo ]; then rm -rf foo; fi
6 > if [ -d foo ]; then rm -rf foo; fi
7 > hg init foo
7 > hg init foo
8 > cd foo
8 > cd foo
9 > hg debugbuilddag "$3"
9 > hg debugbuilddag "$3"
10 > hg clone . a $1 --quiet
10 > hg clone . a $1 --quiet
11 > hg clone . b $2 --quiet
11 > hg clone . b $2 --quiet
12 > echo
12 > echo
13 > echo "% -- a -> b tree"
13 > echo "% -- a -> b tree"
14 > hg -R a debugdiscovery b --verbose --old
14 > hg -R a debugdiscovery b --verbose --old
15 > echo
15 > echo
16 > echo "% -- a -> b set"
16 > echo "% -- a -> b set"
17 > hg -R a debugdiscovery b --verbose --debug
17 > hg -R a debugdiscovery b --verbose --debug
18 > echo
18 > echo
19 > echo "% -- b -> a tree"
19 > echo "% -- b -> a tree"
20 > hg -R b debugdiscovery a --verbose --old
20 > hg -R b debugdiscovery a --verbose --old
21 > echo
21 > echo
22 > echo "% -- b -> a set"
22 > echo "% -- b -> a set"
23 > hg -R b debugdiscovery a --verbose --debug
23 > hg -R b debugdiscovery a --verbose --debug
24 > cd ..
24 > cd ..
25 > }
25 > }
26
26
27
27
28 Small superset:
28 Small superset:
29
29
30 $ testdesc '-ra1 -ra2' '-rb1 -rb2 -rb3' '
30 $ testdesc '-ra1 -ra2' '-rb1 -rb2 -rb3' '
31 > +2:f +1:a1:b1
31 > +2:f +1:a1:b1
32 > <f +4 :a2
32 > <f +4 :a2
33 > +5 :b2
33 > +5 :b2
34 > <f +3 :b3'
34 > <f +3 :b3'
35
35
36 % -- a -> b tree
36 % -- a -> b tree
37 comparing with b
37 comparing with b
38 searching for changes
38 searching for changes
39 unpruned common: 01241442b3c2 66f7d451a68b b5714e113bc0
39 unpruned common: 01241442b3c2 66f7d451a68b b5714e113bc0
40 common heads: 01241442b3c2 b5714e113bc0
40 common heads: 01241442b3c2 b5714e113bc0
41 local is subset
41 local is subset
42
42
43 % -- a -> b set
43 % -- a -> b set
44 comparing with b
44 comparing with b
45 query 1; heads
45 query 1; heads
46 searching for changes
46 searching for changes
47 all local heads known remotely
47 all local heads known remotely
48 common heads: 01241442b3c2 b5714e113bc0
48 common heads: 01241442b3c2 b5714e113bc0
49 local is subset
49 local is subset
50
50
51 % -- b -> a tree
51 % -- b -> a tree
52 comparing with a
52 comparing with a
53 searching for changes
53 searching for changes
54 unpruned common: 01241442b3c2 b5714e113bc0
54 unpruned common: 01241442b3c2 b5714e113bc0
55 common heads: 01241442b3c2 b5714e113bc0
55 common heads: 01241442b3c2 b5714e113bc0
56 remote is subset
56 remote is subset
57
57
58 % -- b -> a set
58 % -- b -> a set
59 comparing with a
59 comparing with a
60 query 1; heads
60 query 1; heads
61 searching for changes
61 searching for changes
62 all remote heads known locally
62 all remote heads known locally
63 common heads: 01241442b3c2 b5714e113bc0
63 common heads: 01241442b3c2 b5714e113bc0
64 remote is subset
64 remote is subset
65
65
66
66
67 Many new:
67 Many new:
68
68
69 $ testdesc '-ra1 -ra2' '-rb' '
69 $ testdesc '-ra1 -ra2' '-rb' '
70 > +2:f +3:a1 +3:b
70 > +2:f +3:a1 +3:b
71 > <f +30 :a2'
71 > <f +30 :a2'
72
72
73 % -- a -> b tree
73 % -- a -> b tree
74 comparing with b
74 comparing with b
75 searching for changes
75 searching for changes
76 unpruned common: bebd167eb94d
76 unpruned common: bebd167eb94d
77 common heads: bebd167eb94d
77 common heads: bebd167eb94d
78
78
79 % -- a -> b set
79 % -- a -> b set
80 comparing with b
80 comparing with b
81 query 1; heads
81 query 1; heads
82 searching for changes
82 searching for changes
83 taking initial sample
83 taking initial sample
84 searching: 2 queries
84 searching: 2 queries
85 query 2; still undecided: 29, sample size is: 29
85 query 2; still undecided: 29, sample size is: 29
86 2 total queries
86 2 total queries
87 common heads: bebd167eb94d
87 common heads: bebd167eb94d
88
88
89 % -- b -> a tree
89 % -- b -> a tree
90 comparing with a
90 comparing with a
91 searching for changes
91 searching for changes
92 unpruned common: 66f7d451a68b bebd167eb94d
92 unpruned common: 66f7d451a68b bebd167eb94d
93 common heads: bebd167eb94d
93 common heads: bebd167eb94d
94
94
95 % -- b -> a set
95 % -- b -> a set
96 comparing with a
96 comparing with a
97 query 1; heads
97 query 1; heads
98 searching for changes
98 searching for changes
99 taking initial sample
99 taking initial sample
100 searching: 2 queries
100 searching: 2 queries
101 query 2; still undecided: 2, sample size is: 2
101 query 2; still undecided: 2, sample size is: 2
102 2 total queries
102 2 total queries
103 common heads: bebd167eb94d
103 common heads: bebd167eb94d
104
104
105
105
106 Both sides many new with stub:
106 Both sides many new with stub:
107
107
108 $ testdesc '-ra1 -ra2' '-rb' '
108 $ testdesc '-ra1 -ra2' '-rb' '
109 > +2:f +2:a1 +30 :b
109 > +2:f +2:a1 +30 :b
110 > <f +30 :a2'
110 > <f +30 :a2'
111
111
112 % -- a -> b tree
112 % -- a -> b tree
113 comparing with b
113 comparing with b
114 searching for changes
114 searching for changes
115 unpruned common: 2dc09a01254d
115 unpruned common: 2dc09a01254d
116 common heads: 2dc09a01254d
116 common heads: 2dc09a01254d
117
117
118 % -- a -> b set
118 % -- a -> b set
119 comparing with b
119 comparing with b
120 query 1; heads
120 query 1; heads
121 searching for changes
121 searching for changes
122 taking initial sample
122 taking initial sample
123 searching: 2 queries
123 searching: 2 queries
124 query 2; still undecided: 29, sample size is: 29
124 query 2; still undecided: 29, sample size is: 29
125 2 total queries
125 2 total queries
126 common heads: 2dc09a01254d
126 common heads: 2dc09a01254d
127
127
128 % -- b -> a tree
128 % -- b -> a tree
129 comparing with a
129 comparing with a
130 searching for changes
130 searching for changes
131 unpruned common: 2dc09a01254d 66f7d451a68b
131 unpruned common: 2dc09a01254d 66f7d451a68b
132 common heads: 2dc09a01254d
132 common heads: 2dc09a01254d
133
133
134 % -- b -> a set
134 % -- b -> a set
135 comparing with a
135 comparing with a
136 query 1; heads
136 query 1; heads
137 searching for changes
137 searching for changes
138 taking initial sample
138 taking initial sample
139 searching: 2 queries
139 searching: 2 queries
140 query 2; still undecided: 29, sample size is: 29
140 query 2; still undecided: 29, sample size is: 29
141 2 total queries
141 2 total queries
142 common heads: 2dc09a01254d
142 common heads: 2dc09a01254d
143
143
144
144
145 Both many new:
145 Both many new:
146
146
147 $ testdesc '-ra' '-rb' '
147 $ testdesc '-ra' '-rb' '
148 > +2:f +30 :b
148 > +2:f +30 :b
149 > <f +30 :a'
149 > <f +30 :a'
150
150
151 % -- a -> b tree
151 % -- a -> b tree
152 comparing with b
152 comparing with b
153 searching for changes
153 searching for changes
154 unpruned common: 66f7d451a68b
154 unpruned common: 66f7d451a68b
155 common heads: 66f7d451a68b
155 common heads: 66f7d451a68b
156
156
157 % -- a -> b set
157 % -- a -> b set
158 comparing with b
158 comparing with b
159 query 1; heads
159 query 1; heads
160 searching for changes
160 searching for changes
161 taking quick initial sample
161 taking quick initial sample
162 searching: 2 queries
162 searching: 2 queries
163 query 2; still undecided: 31, sample size is: 31
163 query 2; still undecided: 31, sample size is: 31
164 2 total queries
164 2 total queries
165 common heads: 66f7d451a68b
165 common heads: 66f7d451a68b
166
166
167 % -- b -> a tree
167 % -- b -> a tree
168 comparing with a
168 comparing with a
169 searching for changes
169 searching for changes
170 unpruned common: 66f7d451a68b
170 unpruned common: 66f7d451a68b
171 common heads: 66f7d451a68b
171 common heads: 66f7d451a68b
172
172
173 % -- b -> a set
173 % -- b -> a set
174 comparing with a
174 comparing with a
175 query 1; heads
175 query 1; heads
176 searching for changes
176 searching for changes
177 taking quick initial sample
177 taking quick initial sample
178 searching: 2 queries
178 searching: 2 queries
179 query 2; still undecided: 31, sample size is: 31
179 query 2; still undecided: 31, sample size is: 31
180 2 total queries
180 2 total queries
181 common heads: 66f7d451a68b
181 common heads: 66f7d451a68b
182
182
183
183
184 Both many new skewed:
184 Both many new skewed:
185
185
186 $ testdesc '-ra' '-rb' '
186 $ testdesc '-ra' '-rb' '
187 > +2:f +30 :b
187 > +2:f +30 :b
188 > <f +50 :a'
188 > <f +50 :a'
189
189
190 % -- a -> b tree
190 % -- a -> b tree
191 comparing with b
191 comparing with b
192 searching for changes
192 searching for changes
193 unpruned common: 66f7d451a68b
193 unpruned common: 66f7d451a68b
194 common heads: 66f7d451a68b
194 common heads: 66f7d451a68b
195
195
196 % -- a -> b set
196 % -- a -> b set
197 comparing with b
197 comparing with b
198 query 1; heads
198 query 1; heads
199 searching for changes
199 searching for changes
200 taking quick initial sample
200 taking quick initial sample
201 searching: 2 queries
201 searching: 2 queries
202 query 2; still undecided: 51, sample size is: 51
202 query 2; still undecided: 51, sample size is: 51
203 2 total queries
203 2 total queries
204 common heads: 66f7d451a68b
204 common heads: 66f7d451a68b
205
205
206 % -- b -> a tree
206 % -- b -> a tree
207 comparing with a
207 comparing with a
208 searching for changes
208 searching for changes
209 unpruned common: 66f7d451a68b
209 unpruned common: 66f7d451a68b
210 common heads: 66f7d451a68b
210 common heads: 66f7d451a68b
211
211
212 % -- b -> a set
212 % -- b -> a set
213 comparing with a
213 comparing with a
214 query 1; heads
214 query 1; heads
215 searching for changes
215 searching for changes
216 taking quick initial sample
216 taking quick initial sample
217 searching: 2 queries
217 searching: 2 queries
218 query 2; still undecided: 31, sample size is: 31
218 query 2; still undecided: 31, sample size is: 31
219 2 total queries
219 2 total queries
220 common heads: 66f7d451a68b
220 common heads: 66f7d451a68b
221
221
222
222
223 Both many new on top of long history:
223 Both many new on top of long history:
224
224
225 $ testdesc '-ra' '-rb' '
225 $ testdesc '-ra' '-rb' '
226 > +1000:f +30 :b
226 > +1000:f +30 :b
227 > <f +50 :a'
227 > <f +50 :a'
228
228
229 % -- a -> b tree
229 % -- a -> b tree
230 comparing with b
230 comparing with b
231 searching for changes
231 searching for changes
232 unpruned common: 7ead0cba2838
232 unpruned common: 7ead0cba2838
233 common heads: 7ead0cba2838
233 common heads: 7ead0cba2838
234
234
235 % -- a -> b set
235 % -- a -> b set
236 comparing with b
236 comparing with b
237 query 1; heads
237 query 1; heads
238 searching for changes
238 searching for changes
239 taking quick initial sample
239 taking quick initial sample
240 searching: 2 queries
240 searching: 2 queries
241 query 2; still undecided: 1049, sample size is: 11
241 query 2; still undecided: 1049, sample size is: 11
242 sampling from both directions
242 sampling from both directions
243 searching: 3 queries
243 searching: 3 queries
244 query 3; still undecided: 31, sample size is: 31
244 query 3; still undecided: 31, sample size is: 31
245 3 total queries
245 3 total queries
246 common heads: 7ead0cba2838
246 common heads: 7ead0cba2838
247
247
248 % -- b -> a tree
248 % -- b -> a tree
249 comparing with a
249 comparing with a
250 searching for changes
250 searching for changes
251 unpruned common: 7ead0cba2838
251 unpruned common: 7ead0cba2838
252 common heads: 7ead0cba2838
252 common heads: 7ead0cba2838
253
253
254 % -- b -> a set
254 % -- b -> a set
255 comparing with a
255 comparing with a
256 query 1; heads
256 query 1; heads
257 searching for changes
257 searching for changes
258 taking quick initial sample
258 taking quick initial sample
259 searching: 2 queries
259 searching: 2 queries
260 query 2; still undecided: 1029, sample size is: 11
260 query 2; still undecided: 1029, sample size is: 11
261 sampling from both directions
261 sampling from both directions
262 searching: 3 queries
262 searching: 3 queries
263 query 3; still undecided: 15, sample size is: 15
263 query 3; still undecided: 15, sample size is: 15
264 3 total queries
264 3 total queries
265 common heads: 7ead0cba2838
265 common heads: 7ead0cba2838
266
266
267
267
268 One with >200 heads, which used to use up all of the sample:
268 One with >200 heads, which used to use up all of the sample:
269
269
270 $ hg init manyheads
270 $ hg init manyheads
271 $ cd manyheads
271 $ cd manyheads
272 $ echo "+300:r @a" >dagdesc
272 $ echo "+300:r @a" >dagdesc
273 $ echo "*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3 *r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3" >>dagdesc # 20 heads
273 $ echo "*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3 *r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3" >>dagdesc # 20 heads
274 $ echo "*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3 *r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3" >>dagdesc # 20 heads
274 $ echo "*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3 *r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3" >>dagdesc # 20 heads
275 $ echo "*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3 *r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3" >>dagdesc # 20 heads
275 $ echo "*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3 *r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3" >>dagdesc # 20 heads
276 $ echo "*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3 *r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3" >>dagdesc # 20 heads
276 $ echo "*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3 *r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3" >>dagdesc # 20 heads
277 $ echo "*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3 *r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3" >>dagdesc # 20 heads
277 $ echo "*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3 *r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3" >>dagdesc # 20 heads
278 $ echo "*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3 *r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3" >>dagdesc # 20 heads
278 $ echo "*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3 *r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3" >>dagdesc # 20 heads
279 $ echo "*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3 *r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3" >>dagdesc # 20 heads
279 $ echo "*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3 *r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3" >>dagdesc # 20 heads
280 $ echo "*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3 *r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3" >>dagdesc # 20 heads
280 $ echo "*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3 *r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3" >>dagdesc # 20 heads
281 $ echo "*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3 *r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3" >>dagdesc # 20 heads
281 $ echo "*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3 *r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3" >>dagdesc # 20 heads
282 $ echo "*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3 *r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3" >>dagdesc # 20 heads
282 $ echo "*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3 *r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3" >>dagdesc # 20 heads
283 $ echo "*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3 *r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3" >>dagdesc # 20 heads
283 $ echo "*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3 *r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3" >>dagdesc # 20 heads
284 $ echo "*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3 *r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3" >>dagdesc # 20 heads
284 $ echo "*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3 *r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3" >>dagdesc # 20 heads
285 $ echo "*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3 *r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3" >>dagdesc # 20 heads
285 $ echo "*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3 *r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3*r+3" >>dagdesc # 20 heads
286 $ echo "@b *r+3" >>dagdesc # one more head
286 $ echo "@b *r+3" >>dagdesc # one more head
287 $ hg debugbuilddag <dagdesc
287 $ hg debugbuilddag <dagdesc
288 reading DAG from stdin
288 reading DAG from stdin
289
289
290 $ hg heads -t --template . | wc -c
290 $ hg heads -t --template . | wc -c
291 \s*261 (re)
291 \s*261 (re)
292
292
293 $ hg clone -b a . a
293 $ hg clone -b a . a
294 adding changesets
294 adding changesets
295 adding manifests
295 adding manifests
296 adding file changes
296 adding file changes
297 added 1340 changesets with 0 changes to 0 files (+259 heads)
297 added 1340 changesets with 0 changes to 0 files (+259 heads)
298 updating to branch a
298 updating to branch a
299 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
299 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
300 $ hg clone -b b . b
300 $ hg clone -b b . b
301 adding changesets
301 adding changesets
302 adding manifests
302 adding manifests
303 adding file changes
303 adding file changes
304 added 304 changesets with 0 changes to 0 files
304 added 304 changesets with 0 changes to 0 files
305 updating to branch b
305 updating to branch b
306 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
306 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
307
307
308 $ hg -R a debugdiscovery b --debug --verbose
308 $ hg -R a debugdiscovery b --debug --verbose
309 comparing with b
309 comparing with b
310 query 1; heads
310 query 1; heads
311 searching for changes
311 searching for changes
312 taking quick initial sample
312 taking quick initial sample
313 searching: 2 queries
313 searching: 2 queries
314 query 2; still undecided: 1080, sample size is: 260
314 query 2; still undecided: 1080, sample size is: 260
315 sampling from both directions
315 sampling from both directions
316 searching: 3 queries
316 searching: 3 queries
317 query 3; still undecided: 820, sample size is: 260
317 query 3; still undecided: 820, sample size is: 260
318 sampling from both directions
318 sampling from both directions
319 searching: 4 queries
319 searching: 4 queries
320 query 4; still undecided: 560, sample size is: 260
320 query 4; still undecided: 560, sample size is: 260
321 sampling from both directions
321 sampling from both directions
322 searching: 5 queries
322 searching: 5 queries
323 query 5; still undecided: 300, sample size is: 200
323 query 5; still undecided: 300, sample size is: 200
324 5 total queries
324 5 total queries
325 common heads: 3ee37d65064a
325 common heads: 3ee37d65064a
326
326
327 Test actual protocol when pulling one new head in addition to common heads
328
329 $ hg clone -U b c
330 $ hg -R c id -ir tip
331 513314ca8b3a
332 $ hg -R c up -qr default
333 $ touch c/f
334 $ hg -R c ci -Aqm "extra head"
335 $ hg -R c id -i
336 e64a39e7da8b
337
338 $ hg serve -R c -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log
339 $ cat hg.pid >> $DAEMON_PIDS
340
341 $ hg -R b incoming http://localhost:$HGPORT/ -T '{node|short}\n'
342 comparing with http://localhost:$HGPORT/
343 searching for changes
344 e64a39e7da8b
345
346 $ "$TESTDIR/killdaemons.py" $DAEMON_PIDS
347 $ cut -d' ' -f6- access.log | grep -v cmd=known # cmd=known uses random sampling
348 "GET /?cmd=capabilities HTTP/1.1" 200 -
349 "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D513314ca8b3ae4dac8eec56966265b00fcf866db
350 "GET /?cmd=getbundle HTTP/1.1" 200 - x-hgarg-1:common=513314ca8b3ae4dac8eec56966265b00fcf866db&heads=e64a39e7da8b0d54bc63e81169aff001c13b3477+513314ca8b3ae4dac8eec56966265b00fcf866db
351 $ cat errors.log
352
327 $ cd ..
353 $ cd ..
@@ -1,502 +1,534
1 $ "$TESTDIR/hghave" killdaemons || exit 80
1 $ "$TESTDIR/hghave" killdaemons || exit 80
2
2
3 Tests discovery against servers without getbundle support:
3 Tests discovery against servers without getbundle support:
4
4
5 $ CAP=getbundle
5 $ CAP=getbundle
6 $ . "$TESTDIR/notcapable"
6 $ . "$TESTDIR/notcapable"
7 $ cat >> $HGRCPATH <<EOF
7 $ cat >> $HGRCPATH <<EOF
8 > [ui]
8 > [ui]
9 > logtemplate="{rev} {node|short}: {desc} {branches}\n"
9 > logtemplate="{rev} {node|short}: {desc} {branches}\n"
10 > EOF
10 > EOF
11
11
12 Setup HTTP server control:
12 Setup HTTP server control:
13
13
14 $ remote=http://localhost:$HGPORT/
14 $ remote=http://localhost:$HGPORT/
15 $ export remote
15 $ export remote
16 $ tstart() {
16 $ tstart() {
17 > echo '[web]' > $1/.hg/hgrc
17 > echo '[web]' > $1/.hg/hgrc
18 > echo 'push_ssl = false' >> $1/.hg/hgrc
18 > echo 'push_ssl = false' >> $1/.hg/hgrc
19 > echo 'allow_push = *' >> $1/.hg/hgrc
19 > echo 'allow_push = *' >> $1/.hg/hgrc
20 > hg serve -R $1 -p $HGPORT -d --pid-file=hg.pid -E errors.log
20 > hg serve -R $1 -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log
21 > cat hg.pid >> $DAEMON_PIDS
21 > cat hg.pid >> $DAEMON_PIDS
22 > }
22 > }
23 $ tstop() {
23 $ tstop() {
24 > "$TESTDIR/killdaemons.py" $DAEMON_PIDS
24 > "$TESTDIR/killdaemons.py" $DAEMON_PIDS
25 > [ "$1" ] && cut -d' ' -f6- access.log && cat errors.log
26 > rm access.log errors.log
25 > }
27 > }
26
28
27 Both are empty:
29 Both are empty:
28
30
29 $ hg init empty1
31 $ hg init empty1
30 $ hg init empty2
32 $ hg init empty2
31 $ tstart empty2
33 $ tstart empty2
32 $ hg incoming -R empty1 $remote
34 $ hg incoming -R empty1 $remote
33 comparing with http://localhost:$HGPORT/
35 comparing with http://localhost:$HGPORT/
34 no changes found
36 no changes found
35 [1]
37 [1]
36 $ hg outgoing -R empty1 $remote
38 $ hg outgoing -R empty1 $remote
37 comparing with http://localhost:$HGPORT/
39 comparing with http://localhost:$HGPORT/
38 no changes found
40 no changes found
39 [1]
41 [1]
40 $ hg pull -R empty1 $remote
42 $ hg pull -R empty1 $remote
41 pulling from http://localhost:$HGPORT/
43 pulling from http://localhost:$HGPORT/
42 no changes found
44 no changes found
43 $ hg push -R empty1 $remote
45 $ hg push -R empty1 $remote
44 pushing to http://localhost:$HGPORT/
46 pushing to http://localhost:$HGPORT/
45 no changes found
47 no changes found
46 [1]
48 [1]
47 $ tstop
49 $ tstop
48
50
49 Base repo:
51 Base repo:
50
52
51 $ hg init main
53 $ hg init main
52 $ cd main
54 $ cd main
53 $ hg debugbuilddag -mo '+2:tbase @name1 +3:thead1 <tbase @name2 +4:thead2 @both /thead1 +2:tmaintip'
55 $ hg debugbuilddag -mo '+2:tbase @name1 +3:thead1 <tbase @name2 +4:thead2 @both /thead1 +2:tmaintip'
54 $ hg log -G
56 $ hg log -G
55 o 11 a19bfa7e7328: r11 both
57 o 11 a19bfa7e7328: r11 both
56 |
58 |
57 o 10 8b6bad1512e1: r10 both
59 o 10 8b6bad1512e1: r10 both
58 |
60 |
59 o 9 025829e08038: r9 both
61 o 9 025829e08038: r9 both
60 |\
62 |\
61 | o 8 d8f638ac69e9: r8 name2
63 | o 8 d8f638ac69e9: r8 name2
62 | |
64 | |
63 | o 7 b6b4d315a2ac: r7 name2
65 | o 7 b6b4d315a2ac: r7 name2
64 | |
66 | |
65 | o 6 6c6f5d5f3c11: r6 name2
67 | o 6 6c6f5d5f3c11: r6 name2
66 | |
68 | |
67 | o 5 70314b29987d: r5 name2
69 | o 5 70314b29987d: r5 name2
68 | |
70 | |
69 o | 4 e71dbbc70e03: r4 name1
71 o | 4 e71dbbc70e03: r4 name1
70 | |
72 | |
71 o | 3 2c8d5d5ec612: r3 name1
73 o | 3 2c8d5d5ec612: r3 name1
72 | |
74 | |
73 o | 2 a7892891da29: r2 name1
75 o | 2 a7892891da29: r2 name1
74 |/
76 |/
75 o 1 0019a3b924fd: r1
77 o 1 0019a3b924fd: r1
76 |
78 |
77 o 0 d57206cc072a: r0
79 o 0 d57206cc072a: r0
78
80
79 $ cd ..
81 $ cd ..
80 $ tstart main
82 $ tstart main
81
83
82 Full clone:
84 Full clone:
83
85
84 $ hg clone main full
86 $ hg clone main full
85 updating to branch default
87 updating to branch default
86 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
88 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
87 $ cd full
89 $ cd full
88 $ hg incoming $remote
90 $ hg incoming $remote
89 comparing with http://localhost:$HGPORT/
91 comparing with http://localhost:$HGPORT/
90 searching for changes
92 searching for changes
91 no changes found
93 no changes found
92 [1]
94 [1]
93 $ hg outgoing $remote
95 $ hg outgoing $remote
94 comparing with http://localhost:$HGPORT/
96 comparing with http://localhost:$HGPORT/
95 searching for changes
97 searching for changes
96 no changes found
98 no changes found
97 [1]
99 [1]
98 $ hg pull $remote
100 $ hg pull $remote
99 pulling from http://localhost:$HGPORT/
101 pulling from http://localhost:$HGPORT/
100 searching for changes
102 searching for changes
101 no changes found
103 no changes found
102 $ hg push $remote
104 $ hg push $remote
103 pushing to http://localhost:$HGPORT/
105 pushing to http://localhost:$HGPORT/
104 searching for changes
106 searching for changes
105 no changes found
107 no changes found
106 [1]
108 [1]
107 $ cd ..
109 $ cd ..
108
110
109 Local is empty:
111 Local is empty:
110
112
111 $ cd empty1
113 $ cd empty1
112 $ hg incoming $remote
114 $ hg incoming $remote
113 comparing with http://localhost:$HGPORT/
115 comparing with http://localhost:$HGPORT/
114 0 d57206cc072a: r0
116 0 d57206cc072a: r0
115 1 0019a3b924fd: r1
117 1 0019a3b924fd: r1
116 2 a7892891da29: r2 name1
118 2 a7892891da29: r2 name1
117 3 2c8d5d5ec612: r3 name1
119 3 2c8d5d5ec612: r3 name1
118 4 e71dbbc70e03: r4 name1
120 4 e71dbbc70e03: r4 name1
119 5 70314b29987d: r5 name2
121 5 70314b29987d: r5 name2
120 6 6c6f5d5f3c11: r6 name2
122 6 6c6f5d5f3c11: r6 name2
121 7 b6b4d315a2ac: r7 name2
123 7 b6b4d315a2ac: r7 name2
122 8 d8f638ac69e9: r8 name2
124 8 d8f638ac69e9: r8 name2
123 9 025829e08038: r9 both
125 9 025829e08038: r9 both
124 10 8b6bad1512e1: r10 both
126 10 8b6bad1512e1: r10 both
125 11 a19bfa7e7328: r11 both
127 11 a19bfa7e7328: r11 both
126 $ hg outgoing $remote
128 $ hg outgoing $remote
127 comparing with http://localhost:$HGPORT/
129 comparing with http://localhost:$HGPORT/
128 no changes found
130 no changes found
129 [1]
131 [1]
130 $ hg push $remote
132 $ hg push $remote
131 pushing to http://localhost:$HGPORT/
133 pushing to http://localhost:$HGPORT/
132 no changes found
134 no changes found
133 [1]
135 [1]
134 $ hg pull $remote
136 $ hg pull $remote
135 pulling from http://localhost:$HGPORT/
137 pulling from http://localhost:$HGPORT/
136 requesting all changes
138 requesting all changes
137 adding changesets
139 adding changesets
138 adding manifests
140 adding manifests
139 adding file changes
141 adding file changes
140 added 12 changesets with 24 changes to 2 files
142 added 12 changesets with 24 changes to 2 files
141 (run 'hg update' to get a working copy)
143 (run 'hg update' to get a working copy)
142 $ hg incoming $remote
144 $ hg incoming $remote
143 comparing with http://localhost:$HGPORT/
145 comparing with http://localhost:$HGPORT/
144 searching for changes
146 searching for changes
145 no changes found
147 no changes found
146 [1]
148 [1]
147 $ cd ..
149 $ cd ..
148
150
149 Local is subset:
151 Local is subset:
150
152
151 $ hg clone main subset --rev name2 ; cd subset
153 $ hg clone main subset --rev name2 ; cd subset
152 adding changesets
154 adding changesets
153 adding manifests
155 adding manifests
154 adding file changes
156 adding file changes
155 added 6 changesets with 12 changes to 2 files
157 added 6 changesets with 12 changes to 2 files
156 updating to branch name2
158 updating to branch name2
157 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
159 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
158 $ hg incoming $remote
160 $ hg incoming $remote
159 comparing with http://localhost:$HGPORT/
161 comparing with http://localhost:$HGPORT/
160 searching for changes
162 searching for changes
161 6 a7892891da29: r2 name1
163 6 a7892891da29: r2 name1
162 7 2c8d5d5ec612: r3 name1
164 7 2c8d5d5ec612: r3 name1
163 8 e71dbbc70e03: r4 name1
165 8 e71dbbc70e03: r4 name1
164 9 025829e08038: r9 both
166 9 025829e08038: r9 both
165 10 8b6bad1512e1: r10 both
167 10 8b6bad1512e1: r10 both
166 11 a19bfa7e7328: r11 both
168 11 a19bfa7e7328: r11 both
167 $ hg outgoing $remote
169 $ hg outgoing $remote
168 comparing with http://localhost:$HGPORT/
170 comparing with http://localhost:$HGPORT/
169 searching for changes
171 searching for changes
170 no changes found
172 no changes found
171 [1]
173 [1]
172 $ hg push $remote
174 $ hg push $remote
173 pushing to http://localhost:$HGPORT/
175 pushing to http://localhost:$HGPORT/
174 searching for changes
176 searching for changes
175 no changes found
177 no changes found
176 [1]
178 [1]
177 $ hg pull $remote
179 $ hg pull $remote
178 pulling from http://localhost:$HGPORT/
180 pulling from http://localhost:$HGPORT/
179 searching for changes
181 searching for changes
180 adding changesets
182 adding changesets
181 adding manifests
183 adding manifests
182 adding file changes
184 adding file changes
183 added 6 changesets with 12 changes to 2 files
185 added 6 changesets with 12 changes to 2 files
184 (run 'hg update' to get a working copy)
186 (run 'hg update' to get a working copy)
185 $ hg incoming $remote
187 $ hg incoming $remote
186 comparing with http://localhost:$HGPORT/
188 comparing with http://localhost:$HGPORT/
187 searching for changes
189 searching for changes
188 no changes found
190 no changes found
189 [1]
191 [1]
190 $ cd ..
192 $ cd ..
193 $ tstop
191
194
192 Remote is empty:
195 Remote is empty:
193
196
194 $ tstop ; tstart empty2
197 $ tstart empty2
195 $ cd main
198 $ cd main
196 $ hg incoming $remote
199 $ hg incoming $remote
197 comparing with http://localhost:$HGPORT/
200 comparing with http://localhost:$HGPORT/
198 searching for changes
201 searching for changes
199 no changes found
202 no changes found
200 [1]
203 [1]
201 $ hg outgoing $remote
204 $ hg outgoing $remote
202 comparing with http://localhost:$HGPORT/
205 comparing with http://localhost:$HGPORT/
203 searching for changes
206 searching for changes
204 0 d57206cc072a: r0
207 0 d57206cc072a: r0
205 1 0019a3b924fd: r1
208 1 0019a3b924fd: r1
206 2 a7892891da29: r2 name1
209 2 a7892891da29: r2 name1
207 3 2c8d5d5ec612: r3 name1
210 3 2c8d5d5ec612: r3 name1
208 4 e71dbbc70e03: r4 name1
211 4 e71dbbc70e03: r4 name1
209 5 70314b29987d: r5 name2
212 5 70314b29987d: r5 name2
210 6 6c6f5d5f3c11: r6 name2
213 6 6c6f5d5f3c11: r6 name2
211 7 b6b4d315a2ac: r7 name2
214 7 b6b4d315a2ac: r7 name2
212 8 d8f638ac69e9: r8 name2
215 8 d8f638ac69e9: r8 name2
213 9 025829e08038: r9 both
216 9 025829e08038: r9 both
214 10 8b6bad1512e1: r10 both
217 10 8b6bad1512e1: r10 both
215 11 a19bfa7e7328: r11 both
218 11 a19bfa7e7328: r11 both
216 $ hg pull $remote
219 $ hg pull $remote
217 pulling from http://localhost:$HGPORT/
220 pulling from http://localhost:$HGPORT/
218 searching for changes
221 searching for changes
219 no changes found
222 no changes found
220 $ hg push $remote
223 $ hg push $remote
221 pushing to http://localhost:$HGPORT/
224 pushing to http://localhost:$HGPORT/
222 searching for changes
225 searching for changes
223 remote: adding changesets
226 remote: adding changesets
224 remote: adding manifests
227 remote: adding manifests
225 remote: adding file changes
228 remote: adding file changes
226 remote: added 12 changesets with 24 changes to 2 files
229 remote: added 12 changesets with 24 changes to 2 files
227 $ hg outgoing $remote
230 $ hg outgoing $remote
228 comparing with http://localhost:$HGPORT/
231 comparing with http://localhost:$HGPORT/
229 searching for changes
232 searching for changes
230 no changes found
233 no changes found
231 [1]
234 [1]
232 $ cd ..
235 $ cd ..
236 $ tstop
233
237
234 Local is superset:
238 Local is superset:
235
239
236 $ tstop
237 $ hg clone main subset2 --rev name2
240 $ hg clone main subset2 --rev name2
238 adding changesets
241 adding changesets
239 adding manifests
242 adding manifests
240 adding file changes
243 adding file changes
241 added 6 changesets with 12 changes to 2 files
244 added 6 changesets with 12 changes to 2 files
242 updating to branch name2
245 updating to branch name2
243 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
246 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
244 $ tstart subset2
247 $ tstart subset2
245 $ cd main
248 $ cd main
246 $ hg incoming $remote
249 $ hg incoming $remote
247 comparing with http://localhost:$HGPORT/
250 comparing with http://localhost:$HGPORT/
248 searching for changes
251 searching for changes
249 no changes found
252 no changes found
250 [1]
253 [1]
251 $ hg outgoing $remote
254 $ hg outgoing $remote
252 comparing with http://localhost:$HGPORT/
255 comparing with http://localhost:$HGPORT/
253 searching for changes
256 searching for changes
254 2 a7892891da29: r2 name1
257 2 a7892891da29: r2 name1
255 3 2c8d5d5ec612: r3 name1
258 3 2c8d5d5ec612: r3 name1
256 4 e71dbbc70e03: r4 name1
259 4 e71dbbc70e03: r4 name1
257 9 025829e08038: r9 both
260 9 025829e08038: r9 both
258 10 8b6bad1512e1: r10 both
261 10 8b6bad1512e1: r10 both
259 11 a19bfa7e7328: r11 both
262 11 a19bfa7e7328: r11 both
260 $ hg pull $remote
263 $ hg pull $remote
261 pulling from http://localhost:$HGPORT/
264 pulling from http://localhost:$HGPORT/
262 searching for changes
265 searching for changes
263 no changes found
266 no changes found
264 $ hg push $remote
267 $ hg push $remote
265 pushing to http://localhost:$HGPORT/
268 pushing to http://localhost:$HGPORT/
266 searching for changes
269 searching for changes
267 abort: push creates new remote branches: both, name1!
270 abort: push creates new remote branches: both, name1!
268 (use 'hg push --new-branch' to create new remote branches)
271 (use 'hg push --new-branch' to create new remote branches)
269 [255]
272 [255]
270 $ hg push $remote --new-branch
273 $ hg push $remote --new-branch
271 pushing to http://localhost:$HGPORT/
274 pushing to http://localhost:$HGPORT/
272 searching for changes
275 searching for changes
273 remote: adding changesets
276 remote: adding changesets
274 remote: adding manifests
277 remote: adding manifests
275 remote: adding file changes
278 remote: adding file changes
276 remote: added 6 changesets with 12 changes to 2 files
279 remote: added 6 changesets with 12 changes to 2 files
277 $ hg outgoing $remote
280 $ hg outgoing $remote
278 comparing with http://localhost:$HGPORT/
281 comparing with http://localhost:$HGPORT/
279 searching for changes
282 searching for changes
280 no changes found
283 no changes found
281 [1]
284 [1]
282 $ cd ..
285 $ cd ..
286 $ tstop
283
287
284 Partial pull:
288 Partial pull:
285
289
286 $ tstop ; tstart main
290 $ tstart main
287 $ hg clone $remote partial --rev name2
291 $ hg clone $remote partial --rev name2
288 adding changesets
292 adding changesets
289 adding manifests
293 adding manifests
290 adding file changes
294 adding file changes
291 added 6 changesets with 12 changes to 2 files
295 added 6 changesets with 12 changes to 2 files
292 updating to branch name2
296 updating to branch name2
293 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
297 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
294 $ cd partial
298 $ cd partial
295 $ hg incoming $remote
299 $ hg incoming $remote
296 comparing with http://localhost:$HGPORT/
300 comparing with http://localhost:$HGPORT/
297 searching for changes
301 searching for changes
298 6 a7892891da29: r2 name1
302 6 a7892891da29: r2 name1
299 7 2c8d5d5ec612: r3 name1
303 7 2c8d5d5ec612: r3 name1
300 8 e71dbbc70e03: r4 name1
304 8 e71dbbc70e03: r4 name1
301 9 025829e08038: r9 both
305 9 025829e08038: r9 both
302 10 8b6bad1512e1: r10 both
306 10 8b6bad1512e1: r10 both
303 11 a19bfa7e7328: r11 both
307 11 a19bfa7e7328: r11 both
304 $ hg incoming $remote --rev name1
308 $ hg incoming $remote --rev name1
305 comparing with http://localhost:$HGPORT/
309 comparing with http://localhost:$HGPORT/
306 searching for changes
310 searching for changes
307 6 a7892891da29: r2 name1
311 6 a7892891da29: r2 name1
308 7 2c8d5d5ec612: r3 name1
312 7 2c8d5d5ec612: r3 name1
309 8 e71dbbc70e03: r4 name1
313 8 e71dbbc70e03: r4 name1
310 $ hg pull $remote --rev name1
314 $ hg pull $remote --rev name1
311 pulling from http://localhost:$HGPORT/
315 pulling from http://localhost:$HGPORT/
312 searching for changes
316 searching for changes
313 adding changesets
317 adding changesets
314 adding manifests
318 adding manifests
315 adding file changes
319 adding file changes
316 added 3 changesets with 6 changes to 2 files (+1 heads)
320 added 3 changesets with 6 changes to 2 files (+1 heads)
317 (run 'hg heads' to see heads)
321 (run 'hg heads' to see heads)
318 $ hg incoming $remote
322 $ hg incoming $remote
319 comparing with http://localhost:$HGPORT/
323 comparing with http://localhost:$HGPORT/
320 searching for changes
324 searching for changes
321 9 025829e08038: r9 both
325 9 025829e08038: r9 both
322 10 8b6bad1512e1: r10 both
326 10 8b6bad1512e1: r10 both
323 11 a19bfa7e7328: r11 both
327 11 a19bfa7e7328: r11 both
324 $ cd ..
328 $ cd ..
329 $ tstop
325
330
326 Both have new stuff in new named branches:
331 Both have new stuff in new named branches:
327
332
328 $ tstop
329 $ hg clone main repo1a --rev name1 -q
333 $ hg clone main repo1a --rev name1 -q
330 $ hg clone repo1a repo1b -q
334 $ hg clone repo1a repo1b -q
331 $ hg clone main repo2a --rev name2 -q
335 $ hg clone main repo2a --rev name2 -q
332 $ hg clone repo2a repo2b -q
336 $ hg clone repo2a repo2b -q
333 $ tstart repo1a
337 $ tstart repo1a
334
338
335 $ cd repo2a
339 $ cd repo2a
336 $ hg incoming $remote
340 $ hg incoming $remote
337 comparing with http://localhost:$HGPORT/
341 comparing with http://localhost:$HGPORT/
338 searching for changes
342 searching for changes
339 6 a7892891da29: r2 name1
343 6 a7892891da29: r2 name1
340 7 2c8d5d5ec612: r3 name1
344 7 2c8d5d5ec612: r3 name1
341 8 e71dbbc70e03: r4 name1
345 8 e71dbbc70e03: r4 name1
342 $ hg outgoing $remote
346 $ hg outgoing $remote
343 comparing with http://localhost:$HGPORT/
347 comparing with http://localhost:$HGPORT/
344 searching for changes
348 searching for changes
345 2 70314b29987d: r5 name2
349 2 70314b29987d: r5 name2
346 3 6c6f5d5f3c11: r6 name2
350 3 6c6f5d5f3c11: r6 name2
347 4 b6b4d315a2ac: r7 name2
351 4 b6b4d315a2ac: r7 name2
348 5 d8f638ac69e9: r8 name2
352 5 d8f638ac69e9: r8 name2
349 $ hg push $remote --new-branch
353 $ hg push $remote --new-branch
350 pushing to http://localhost:$HGPORT/
354 pushing to http://localhost:$HGPORT/
351 searching for changes
355 searching for changes
352 remote: adding changesets
356 remote: adding changesets
353 remote: adding manifests
357 remote: adding manifests
354 remote: adding file changes
358 remote: adding file changes
355 remote: added 4 changesets with 8 changes to 2 files (+1 heads)
359 remote: added 4 changesets with 8 changes to 2 files (+1 heads)
356 $ hg pull $remote
360 $ hg pull $remote
357 pulling from http://localhost:$HGPORT/
361 pulling from http://localhost:$HGPORT/
358 searching for changes
362 searching for changes
359 adding changesets
363 adding changesets
360 adding manifests
364 adding manifests
361 adding file changes
365 adding file changes
362 added 3 changesets with 6 changes to 2 files (+1 heads)
366 added 3 changesets with 6 changes to 2 files (+1 heads)
363 (run 'hg heads' to see heads)
367 (run 'hg heads' to see heads)
364 $ hg incoming $remote
368 $ hg incoming $remote
365 comparing with http://localhost:$HGPORT/
369 comparing with http://localhost:$HGPORT/
366 searching for changes
370 searching for changes
367 no changes found
371 no changes found
368 [1]
372 [1]
369 $ hg outgoing $remote
373 $ hg outgoing $remote
370 comparing with http://localhost:$HGPORT/
374 comparing with http://localhost:$HGPORT/
371 searching for changes
375 searching for changes
372 no changes found
376 no changes found
373 [1]
377 [1]
374 $ cd ..
378 $ cd ..
379 $ tstop
375
380
376 $ tstop ; tstart repo1b
381 $ tstart repo1b
377 $ cd repo2b
382 $ cd repo2b
378 $ hg incoming $remote
383 $ hg incoming $remote
379 comparing with http://localhost:$HGPORT/
384 comparing with http://localhost:$HGPORT/
380 searching for changes
385 searching for changes
381 6 a7892891da29: r2 name1
386 6 a7892891da29: r2 name1
382 7 2c8d5d5ec612: r3 name1
387 7 2c8d5d5ec612: r3 name1
383 8 e71dbbc70e03: r4 name1
388 8 e71dbbc70e03: r4 name1
384 $ hg outgoing $remote
389 $ hg outgoing $remote
385 comparing with http://localhost:$HGPORT/
390 comparing with http://localhost:$HGPORT/
386 searching for changes
391 searching for changes
387 2 70314b29987d: r5 name2
392 2 70314b29987d: r5 name2
388 3 6c6f5d5f3c11: r6 name2
393 3 6c6f5d5f3c11: r6 name2
389 4 b6b4d315a2ac: r7 name2
394 4 b6b4d315a2ac: r7 name2
390 5 d8f638ac69e9: r8 name2
395 5 d8f638ac69e9: r8 name2
391 $ hg pull $remote
396 $ hg pull $remote
392 pulling from http://localhost:$HGPORT/
397 pulling from http://localhost:$HGPORT/
393 searching for changes
398 searching for changes
394 adding changesets
399 adding changesets
395 adding manifests
400 adding manifests
396 adding file changes
401 adding file changes
397 added 3 changesets with 6 changes to 2 files (+1 heads)
402 added 3 changesets with 6 changes to 2 files (+1 heads)
398 (run 'hg heads' to see heads)
403 (run 'hg heads' to see heads)
399 $ hg push $remote --new-branch
404 $ hg push $remote --new-branch
400 pushing to http://localhost:$HGPORT/
405 pushing to http://localhost:$HGPORT/
401 searching for changes
406 searching for changes
402 remote: adding changesets
407 remote: adding changesets
403 remote: adding manifests
408 remote: adding manifests
404 remote: adding file changes
409 remote: adding file changes
405 remote: added 4 changesets with 8 changes to 2 files (+1 heads)
410 remote: added 4 changesets with 8 changes to 2 files (+1 heads)
406 $ hg incoming $remote
411 $ hg incoming $remote
407 comparing with http://localhost:$HGPORT/
412 comparing with http://localhost:$HGPORT/
408 searching for changes
413 searching for changes
409 no changes found
414 no changes found
410 [1]
415 [1]
411 $ hg outgoing $remote
416 $ hg outgoing $remote
412 comparing with http://localhost:$HGPORT/
417 comparing with http://localhost:$HGPORT/
413 searching for changes
418 searching for changes
414 no changes found
419 no changes found
415 [1]
420 [1]
416 $ cd ..
421 $ cd ..
422 $ tstop
417
423
418 Both have new stuff in existing named branches:
424 Both have new stuff in existing named branches:
419
425
420 $ tstop
421 $ rm -r repo1a repo1b repo2a repo2b
426 $ rm -r repo1a repo1b repo2a repo2b
422 $ hg clone main repo1a --rev 3 --rev 8 -q
427 $ hg clone main repo1a --rev 3 --rev 8 -q
423 $ hg clone repo1a repo1b -q
428 $ hg clone repo1a repo1b -q
424 $ hg clone main repo2a --rev 4 --rev 7 -q
429 $ hg clone main repo2a --rev 4 --rev 7 -q
425 $ hg clone repo2a repo2b -q
430 $ hg clone repo2a repo2b -q
426 $ tstart repo1a
431 $ tstart repo1a
427
432
428 $ cd repo2a
433 $ cd repo2a
429 $ hg incoming $remote
434 $ hg incoming $remote
430 comparing with http://localhost:$HGPORT/
435 comparing with http://localhost:$HGPORT/
431 searching for changes
436 searching for changes
432 8 d8f638ac69e9: r8 name2
437 8 d8f638ac69e9: r8 name2
433 $ hg outgoing $remote
438 $ hg outgoing $remote
434 comparing with http://localhost:$HGPORT/
439 comparing with http://localhost:$HGPORT/
435 searching for changes
440 searching for changes
436 4 e71dbbc70e03: r4 name1
441 4 e71dbbc70e03: r4 name1
437 $ hg push $remote --new-branch
442 $ hg push $remote --new-branch
438 pushing to http://localhost:$HGPORT/
443 pushing to http://localhost:$HGPORT/
439 searching for changes
444 searching for changes
440 remote: adding changesets
445 remote: adding changesets
441 remote: adding manifests
446 remote: adding manifests
442 remote: adding file changes
447 remote: adding file changes
443 remote: added 1 changesets with 2 changes to 2 files
448 remote: added 1 changesets with 2 changes to 2 files
444 $ hg pull $remote
449 $ hg pull $remote
445 pulling from http://localhost:$HGPORT/
450 pulling from http://localhost:$HGPORT/
446 searching for changes
451 searching for changes
447 adding changesets
452 adding changesets
448 adding manifests
453 adding manifests
449 adding file changes
454 adding file changes
450 added 1 changesets with 2 changes to 2 files
455 added 1 changesets with 2 changes to 2 files
451 (run 'hg update' to get a working copy)
456 (run 'hg update' to get a working copy)
452 $ hg incoming $remote
457 $ hg incoming $remote
453 comparing with http://localhost:$HGPORT/
458 comparing with http://localhost:$HGPORT/
454 searching for changes
459 searching for changes
455 no changes found
460 no changes found
456 [1]
461 [1]
457 $ hg outgoing $remote
462 $ hg outgoing $remote
458 comparing with http://localhost:$HGPORT/
463 comparing with http://localhost:$HGPORT/
459 searching for changes
464 searching for changes
460 no changes found
465 no changes found
461 [1]
466 [1]
462 $ cd ..
467 $ cd ..
468 $ tstop
463
469
464 $ tstop ; tstart repo1b
470 $ tstart repo1b
465 $ cd repo2b
471 $ cd repo2b
466 $ hg incoming $remote
472 $ hg incoming $remote
467 comparing with http://localhost:$HGPORT/
473 comparing with http://localhost:$HGPORT/
468 searching for changes
474 searching for changes
469 8 d8f638ac69e9: r8 name2
475 8 d8f638ac69e9: r8 name2
470 $ hg outgoing $remote
476 $ hg outgoing $remote
471 comparing with http://localhost:$HGPORT/
477 comparing with http://localhost:$HGPORT/
472 searching for changes
478 searching for changes
473 4 e71dbbc70e03: r4 name1
479 4 e71dbbc70e03: r4 name1
474 $ hg pull $remote
480 $ hg pull $remote
475 pulling from http://localhost:$HGPORT/
481 pulling from http://localhost:$HGPORT/
476 searching for changes
482 searching for changes
477 adding changesets
483 adding changesets
478 adding manifests
484 adding manifests
479 adding file changes
485 adding file changes
480 added 1 changesets with 2 changes to 2 files
486 added 1 changesets with 2 changes to 2 files
481 (run 'hg update' to get a working copy)
487 (run 'hg update' to get a working copy)
482 $ hg push $remote --new-branch
488 $ hg push $remote --new-branch
483 pushing to http://localhost:$HGPORT/
489 pushing to http://localhost:$HGPORT/
484 searching for changes
490 searching for changes
485 remote: adding changesets
491 remote: adding changesets
486 remote: adding manifests
492 remote: adding manifests
487 remote: adding file changes
493 remote: adding file changes
488 remote: added 1 changesets with 2 changes to 2 files
494 remote: added 1 changesets with 2 changes to 2 files
489 $ hg incoming $remote
495 $ hg incoming $remote
490 comparing with http://localhost:$HGPORT/
496 comparing with http://localhost:$HGPORT/
491 searching for changes
497 searching for changes
492 no changes found
498 no changes found
493 [1]
499 [1]
494 $ hg outgoing $remote
500 $ hg outgoing $remote
495 comparing with http://localhost:$HGPORT/
501 comparing with http://localhost:$HGPORT/
496 searching for changes
502 searching for changes
497 no changes found
503 no changes found
498 [1]
504 [1]
499 $ cd ..
505 $ cd ..
500
506 $ tstop show
501 $ tstop
507 "GET /?cmd=capabilities HTTP/1.1" 200 -
502
508 "GET /?cmd=heads HTTP/1.1" 200 -
509 "GET /?cmd=branches HTTP/1.1" 200 - x-hgarg-1:nodes=d8f638ac69e9ae8dea4f09f11d696546a912d961
510 "GET /?cmd=between HTTP/1.1" 200 - x-hgarg-1:pairs=d8f638ac69e9ae8dea4f09f11d696546a912d961-d57206cc072a18317c1e381fb60aa31bd3401785
511 "GET /?cmd=changegroupsubset HTTP/1.1" 200 - x-hgarg-1:bases=d8f638ac69e9ae8dea4f09f11d696546a912d961&heads=d8f638ac69e9ae8dea4f09f11d696546a912d961+2c8d5d5ec612be65cdfdeac78b7662ab1696324a
512 "GET /?cmd=capabilities HTTP/1.1" 200 -
513 "GET /?cmd=heads HTTP/1.1" 200 -
514 "GET /?cmd=branches HTTP/1.1" 200 - x-hgarg-1:nodes=d8f638ac69e9ae8dea4f09f11d696546a912d961
515 "GET /?cmd=between HTTP/1.1" 200 - x-hgarg-1:pairs=d8f638ac69e9ae8dea4f09f11d696546a912d961-d57206cc072a18317c1e381fb60aa31bd3401785
516 "GET /?cmd=capabilities HTTP/1.1" 200 -
517 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks
518 "GET /?cmd=heads HTTP/1.1" 200 -
519 "GET /?cmd=branches HTTP/1.1" 200 - x-hgarg-1:nodes=d8f638ac69e9ae8dea4f09f11d696546a912d961
520 "GET /?cmd=between HTTP/1.1" 200 - x-hgarg-1:pairs=d8f638ac69e9ae8dea4f09f11d696546a912d961-d57206cc072a18317c1e381fb60aa31bd3401785
521 "GET /?cmd=changegroupsubset HTTP/1.1" 200 - x-hgarg-1:bases=d8f638ac69e9ae8dea4f09f11d696546a912d961&heads=d8f638ac69e9ae8dea4f09f11d696546a912d961+2c8d5d5ec612be65cdfdeac78b7662ab1696324a
522 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=phases
523 "GET /?cmd=capabilities HTTP/1.1" 200 -
524 "GET /?cmd=heads HTTP/1.1" 200 -
525 "GET /?cmd=branchmap HTTP/1.1" 200 -
526 "GET /?cmd=branchmap HTTP/1.1" 200 -
527 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks
528 "POST /?cmd=unbundle HTTP/1.1" 200 - x-hgarg-1:heads=686173686564+1827a5bb63e602382eb89dd58f2ac9f3b007ad91
529 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=phases
530 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks
531 "GET /?cmd=capabilities HTTP/1.1" 200 -
532 "GET /?cmd=heads HTTP/1.1" 200 -
533 "GET /?cmd=capabilities HTTP/1.1" 200 -
534 "GET /?cmd=heads HTTP/1.1" 200 -
General Comments 0
You need to be logged in to leave comments. Login now