Show More
@@ -1,210 +1,211 | |||||
1 | #require no-chg |
|
1 | #require no-chg | |
2 |
|
2 | |||
3 | $ hg init repo |
|
3 | $ hg init repo | |
4 | $ cd repo |
|
4 | $ cd repo | |
5 | $ echo foo > foo |
|
5 | $ echo foo > foo | |
6 | $ hg ci -qAm 'add foo' |
|
6 | $ hg ci -qAm 'add foo' | |
7 | $ echo >> foo |
|
7 | $ echo >> foo | |
8 | $ hg ci -m 'change foo' |
|
8 | $ hg ci -m 'change foo' | |
9 | $ hg up -qC 0 |
|
9 | $ hg up -qC 0 | |
10 | $ echo bar > bar |
|
10 | $ echo bar > bar | |
11 | $ hg ci -qAm 'add bar' |
|
11 | $ hg ci -qAm 'add bar' | |
12 |
|
12 | |||
13 | $ hg log |
|
13 | $ hg log | |
14 | changeset: 2:effea6de0384 |
|
14 | changeset: 2:effea6de0384 | |
15 | tag: tip |
|
15 | tag: tip | |
16 | parent: 0:bbd179dfa0a7 |
|
16 | parent: 0:bbd179dfa0a7 | |
17 | user: test |
|
17 | user: test | |
18 | date: Thu Jan 01 00:00:00 1970 +0000 |
|
18 | date: Thu Jan 01 00:00:00 1970 +0000 | |
19 | summary: add bar |
|
19 | summary: add bar | |
20 |
|
20 | |||
21 | changeset: 1:ed1b79f46b9a |
|
21 | changeset: 1:ed1b79f46b9a | |
22 | user: test |
|
22 | user: test | |
23 | date: Thu Jan 01 00:00:00 1970 +0000 |
|
23 | date: Thu Jan 01 00:00:00 1970 +0000 | |
24 | summary: change foo |
|
24 | summary: change foo | |
25 |
|
25 | |||
26 | changeset: 0:bbd179dfa0a7 |
|
26 | changeset: 0:bbd179dfa0a7 | |
27 | user: test |
|
27 | user: test | |
28 | date: Thu Jan 01 00:00:00 1970 +0000 |
|
28 | date: Thu Jan 01 00:00:00 1970 +0000 | |
29 | summary: add foo |
|
29 | summary: add foo | |
30 |
|
30 | |||
31 | $ cd .. |
|
31 | $ cd .. | |
32 |
|
32 | |||
33 | Test pullbundle functionality |
|
33 | Test pullbundle functionality | |
34 |
|
34 | |||
35 | $ cd repo |
|
35 | $ cd repo | |
36 | $ cat <<EOF > .hg/hgrc |
|
36 | $ cat <<EOF > .hg/hgrc | |
37 | > [server] |
|
37 | > [server] | |
38 | > pullbundle = True |
|
38 | > pullbundle = True | |
39 | > [experimental] |
|
39 | > [experimental] | |
40 | > evolution = True |
|
40 | > evolution = True | |
41 | > [extensions] |
|
41 | > [extensions] | |
42 | > blackbox = |
|
42 | > blackbox = | |
43 | > EOF |
|
43 | > EOF | |
44 | $ hg bundle --base null -r 0 .hg/0.hg |
|
44 | $ hg bundle --base null -r 0 .hg/0.hg | |
45 | 1 changesets found |
|
45 | 1 changesets found | |
46 | $ hg bundle --base 0 -r 1 .hg/1.hg |
|
46 | $ hg bundle --base 0 -r 1 .hg/1.hg | |
47 | 1 changesets found |
|
47 | 1 changesets found | |
48 | $ hg bundle --base 1 -r 2 .hg/2.hg |
|
48 | $ hg bundle --base 1 -r 2 .hg/2.hg | |
49 | 1 changesets found |
|
49 | 1 changesets found | |
50 | $ cat <<EOF > .hg/pullbundles.manifest |
|
50 | $ cat <<EOF > .hg/pullbundles.manifest | |
51 | > 2.hg BUNDLESPEC=none-v2 heads=effea6de0384e684f44435651cb7bd70b8735bd4 bases=bbd179dfa0a71671c253b3ae0aa1513b60d199fa |
|
51 | > 2.hg BUNDLESPEC=none-v2 heads=effea6de0384e684f44435651cb7bd70b8735bd4 bases=bbd179dfa0a71671c253b3ae0aa1513b60d199fa | |
52 | > 1.hg BUNDLESPEC=bzip2-v2 heads=ed1b79f46b9a29f5a6efa59cf12fcfca43bead5a bases=bbd179dfa0a71671c253b3ae0aa1513b60d199fa |
|
52 | > 1.hg BUNDLESPEC=bzip2-v2 heads=ed1b79f46b9a29f5a6efa59cf12fcfca43bead5a bases=bbd179dfa0a71671c253b3ae0aa1513b60d199fa | |
53 | > 0.hg BUNDLESPEC=gzip-v2 heads=bbd179dfa0a71671c253b3ae0aa1513b60d199fa |
|
53 | > 0.hg BUNDLESPEC=gzip-v2 heads=bbd179dfa0a71671c253b3ae0aa1513b60d199fa | |
54 | > EOF |
|
54 | > EOF | |
55 | $ hg --config blackbox.track=debug --debug serve -p $HGPORT2 -d --pid-file=../repo.pid |
|
55 | $ hg --config blackbox.track=debug --debug serve -p $HGPORT2 -d --pid-file=../repo.pid -E ../error.txt | |
56 | listening at http://*:$HGPORT2/ (bound to $LOCALIP:$HGPORT2) (glob) (?) |
|
56 | listening at http://*:$HGPORT2/ (bound to $LOCALIP:$HGPORT2) (glob) (?) | |
57 | $ cat ../repo.pid >> $DAEMON_PIDS |
|
57 | $ cat ../repo.pid >> $DAEMON_PIDS | |
58 | $ cd .. |
|
58 | $ cd .. | |
59 | $ hg clone -r 0 http://localhost:$HGPORT2/ repo.pullbundle |
|
59 | $ hg clone -r 0 http://localhost:$HGPORT2/ repo.pullbundle | |
60 | adding changesets |
|
60 | adding changesets | |
61 | adding manifests |
|
61 | adding manifests | |
62 | adding file changes |
|
62 | adding file changes | |
63 | added 1 changesets with 1 changes to 1 files |
|
63 | added 1 changesets with 1 changes to 1 files | |
64 | new changesets bbd179dfa0a7 (1 drafts) |
|
64 | new changesets bbd179dfa0a7 (1 drafts) | |
65 | updating to branch default |
|
65 | updating to branch default | |
66 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
|
66 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
|
67 | $ cat error.txt | |||
67 | $ cd repo.pullbundle |
|
68 | $ cd repo.pullbundle | |
68 | $ hg pull -r 1 |
|
69 | $ hg pull -r 1 | |
69 | pulling from http://localhost:$HGPORT2/ |
|
70 | pulling from http://localhost:$HGPORT2/ | |
70 | searching for changes |
|
71 | searching for changes | |
71 | adding changesets |
|
72 | adding changesets | |
72 | adding manifests |
|
73 | adding manifests | |
73 | adding file changes |
|
74 | adding file changes | |
74 | added 1 changesets with 1 changes to 1 files |
|
75 | added 1 changesets with 1 changes to 1 files | |
75 | new changesets ed1b79f46b9a (1 drafts) |
|
76 | new changesets ed1b79f46b9a (1 drafts) | |
76 | (run 'hg update' to get a working copy) |
|
77 | (run 'hg update' to get a working copy) | |
77 | $ hg pull -r 2 |
|
78 | $ hg pull -r 2 | |
78 | pulling from http://localhost:$HGPORT2/ |
|
79 | pulling from http://localhost:$HGPORT2/ | |
79 | searching for changes |
|
80 | searching for changes | |
80 | adding changesets |
|
81 | adding changesets | |
81 | adding manifests |
|
82 | adding manifests | |
82 | adding file changes |
|
83 | adding file changes | |
83 | added 1 changesets with 1 changes to 1 files (+1 heads) |
|
84 | added 1 changesets with 1 changes to 1 files (+1 heads) | |
84 | new changesets effea6de0384 (1 drafts) |
|
85 | new changesets effea6de0384 (1 drafts) | |
85 | (run 'hg heads' to see heads, 'hg merge' to merge) |
|
86 | (run 'hg heads' to see heads, 'hg merge' to merge) | |
86 | $ cd .. |
|
87 | $ cd .. | |
87 | $ killdaemons.py |
|
88 | $ killdaemons.py | |
88 | $ grep 'sending pullbundle ' repo/.hg/blackbox.log |
|
89 | $ grep 'sending pullbundle ' repo/.hg/blackbox.log | |
89 | * sending pullbundle "0.hg" (glob) |
|
90 | * sending pullbundle "0.hg" (glob) | |
90 | * sending pullbundle "1.hg" (glob) |
|
91 | * sending pullbundle "1.hg" (glob) | |
91 | * sending pullbundle "2.hg" (glob) |
|
92 | * sending pullbundle "2.hg" (glob) | |
92 | $ rm repo/.hg/blackbox.log |
|
93 | $ rm repo/.hg/blackbox.log | |
93 |
|
94 | |||
94 | Test pullbundle functionality for incremental pulls |
|
95 | Test pullbundle functionality for incremental pulls | |
95 |
|
96 | |||
96 | $ cd repo |
|
97 | $ cd repo | |
97 | $ hg --config blackbox.track=debug --debug serve -p $HGPORT2 -d --pid-file=../repo.pid |
|
98 | $ hg --config blackbox.track=debug --debug serve -p $HGPORT2 -d --pid-file=../repo.pid | |
98 | listening at http://*:$HGPORT2/ (bound to $LOCALIP:$HGPORT2) (glob) (?) |
|
99 | listening at http://*:$HGPORT2/ (bound to $LOCALIP:$HGPORT2) (glob) (?) | |
99 | $ cat ../repo.pid >> $DAEMON_PIDS |
|
100 | $ cat ../repo.pid >> $DAEMON_PIDS | |
100 | $ cd .. |
|
101 | $ cd .. | |
101 | $ hg clone http://localhost:$HGPORT2/ repo.pullbundle2 |
|
102 | $ hg clone http://localhost:$HGPORT2/ repo.pullbundle2 | |
102 | requesting all changes |
|
103 | requesting all changes | |
103 | adding changesets |
|
104 | adding changesets | |
104 | adding manifests |
|
105 | adding manifests | |
105 | adding file changes |
|
106 | adding file changes | |
106 | adding changesets |
|
107 | adding changesets | |
107 | adding manifests |
|
108 | adding manifests | |
108 | adding file changes |
|
109 | adding file changes | |
109 | adding changesets |
|
110 | adding changesets | |
110 | adding manifests |
|
111 | adding manifests | |
111 | adding file changes |
|
112 | adding file changes | |
112 | added 3 changesets with 3 changes to 3 files (+1 heads) |
|
113 | added 3 changesets with 3 changes to 3 files (+1 heads) | |
113 | new changesets bbd179dfa0a7:ed1b79f46b9a (3 drafts) |
|
114 | new changesets bbd179dfa0a7:ed1b79f46b9a (3 drafts) | |
114 | updating to branch default |
|
115 | updating to branch default | |
115 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
|
116 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
116 | $ killdaemons.py |
|
117 | $ killdaemons.py | |
117 | $ grep 'sending pullbundle ' repo/.hg/blackbox.log |
|
118 | $ grep 'sending pullbundle ' repo/.hg/blackbox.log | |
118 | * sending pullbundle "0.hg" (glob) |
|
119 | * sending pullbundle "0.hg" (glob) | |
119 | * sending pullbundle "2.hg" (glob) |
|
120 | * sending pullbundle "2.hg" (glob) | |
120 | * sending pullbundle "1.hg" (glob) |
|
121 | * sending pullbundle "1.hg" (glob) | |
121 | $ rm repo/.hg/blackbox.log |
|
122 | $ rm repo/.hg/blackbox.log | |
122 |
|
123 | |||
123 | Test pullbundle functionality for incoming |
|
124 | Test pullbundle functionality for incoming | |
124 |
|
125 | |||
125 | $ cd repo |
|
126 | $ cd repo | |
126 | $ hg --config blackbox.track=debug --debug serve -p $HGPORT2 -d --pid-file=../repo.pid |
|
127 | $ hg --config blackbox.track=debug --debug serve -p $HGPORT2 -d --pid-file=../repo.pid | |
127 | listening at http://*:$HGPORT2/ (bound to $LOCALIP:$HGPORT2) (glob) (?) |
|
128 | listening at http://*:$HGPORT2/ (bound to $LOCALIP:$HGPORT2) (glob) (?) | |
128 | $ cat ../repo.pid >> $DAEMON_PIDS |
|
129 | $ cat ../repo.pid >> $DAEMON_PIDS | |
129 | $ cd .. |
|
130 | $ cd .. | |
130 | $ hg clone http://localhost:$HGPORT2/ repo.pullbundle2a -r 0 |
|
131 | $ hg clone http://localhost:$HGPORT2/ repo.pullbundle2a -r 0 | |
131 | adding changesets |
|
132 | adding changesets | |
132 | adding manifests |
|
133 | adding manifests | |
133 | adding file changes |
|
134 | adding file changes | |
134 | added 1 changesets with 1 changes to 1 files |
|
135 | added 1 changesets with 1 changes to 1 files | |
135 | new changesets bbd179dfa0a7 (1 drafts) |
|
136 | new changesets bbd179dfa0a7 (1 drafts) | |
136 | updating to branch default |
|
137 | updating to branch default | |
137 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
|
138 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
138 | $ cd repo.pullbundle2a |
|
139 | $ cd repo.pullbundle2a | |
139 | $ hg incoming -r ed1b79f46b9a |
|
140 | $ hg incoming -r ed1b79f46b9a | |
140 | comparing with http://localhost:$HGPORT2/ |
|
141 | comparing with http://localhost:$HGPORT2/ | |
141 | searching for changes |
|
142 | searching for changes | |
142 | changeset: 1:ed1b79f46b9a |
|
143 | changeset: 1:ed1b79f46b9a | |
143 | tag: tip |
|
144 | tag: tip | |
144 | user: test |
|
145 | user: test | |
145 | date: Thu Jan 01 00:00:00 1970 +0000 |
|
146 | date: Thu Jan 01 00:00:00 1970 +0000 | |
146 | summary: change foo |
|
147 | summary: change foo | |
147 |
|
148 | |||
148 | $ cd .. |
|
149 | $ cd .. | |
149 | $ killdaemons.py |
|
150 | $ killdaemons.py | |
150 | $ grep 'sending pullbundle ' repo/.hg/blackbox.log |
|
151 | $ grep 'sending pullbundle ' repo/.hg/blackbox.log | |
151 | * sending pullbundle "0.hg" (glob) |
|
152 | * sending pullbundle "0.hg" (glob) | |
152 | * sending pullbundle "1.hg" (glob) |
|
153 | * sending pullbundle "1.hg" (glob) | |
153 | $ rm repo/.hg/blackbox.log |
|
154 | $ rm repo/.hg/blackbox.log | |
154 |
|
155 | |||
155 | Test recovery from misconfigured server sending no new data |
|
156 | Test recovery from misconfigured server sending no new data | |
156 |
|
157 | |||
157 | $ cd repo |
|
158 | $ cd repo | |
158 | $ cat <<EOF > .hg/pullbundles.manifest |
|
159 | $ cat <<EOF > .hg/pullbundles.manifest | |
159 | > 0.hg heads=ed1b79f46b9a29f5a6efa59cf12fcfca43bead5a bases=bbd179dfa0a71671c253b3ae0aa1513b60d199fa |
|
160 | > 0.hg heads=ed1b79f46b9a29f5a6efa59cf12fcfca43bead5a bases=bbd179dfa0a71671c253b3ae0aa1513b60d199fa | |
160 | > 0.hg heads=bbd179dfa0a71671c253b3ae0aa1513b60d199fa |
|
161 | > 0.hg heads=bbd179dfa0a71671c253b3ae0aa1513b60d199fa | |
161 | > EOF |
|
162 | > EOF | |
162 | $ hg --config blackbox.track=debug --debug serve -p $HGPORT2 -d --pid-file=../repo.pid |
|
163 | $ hg --config blackbox.track=debug --debug serve -p $HGPORT2 -d --pid-file=../repo.pid | |
163 | listening at http://*:$HGPORT2/ (bound to $LOCALIP:$HGPORT2) (glob) (?) |
|
164 | listening at http://*:$HGPORT2/ (bound to $LOCALIP:$HGPORT2) (glob) (?) | |
164 | $ cat ../repo.pid >> $DAEMON_PIDS |
|
165 | $ cat ../repo.pid >> $DAEMON_PIDS | |
165 | $ cd .. |
|
166 | $ cd .. | |
166 | $ hg clone -r 0 http://localhost:$HGPORT2/ repo.pullbundle3 |
|
167 | $ hg clone -r 0 http://localhost:$HGPORT2/ repo.pullbundle3 | |
167 | adding changesets |
|
168 | adding changesets | |
168 | adding manifests |
|
169 | adding manifests | |
169 | adding file changes |
|
170 | adding file changes | |
170 | added 1 changesets with 1 changes to 1 files |
|
171 | added 1 changesets with 1 changes to 1 files | |
171 | new changesets bbd179dfa0a7 (1 drafts) |
|
172 | new changesets bbd179dfa0a7 (1 drafts) | |
172 | updating to branch default |
|
173 | updating to branch default | |
173 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
|
174 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
174 | $ cd repo.pullbundle3 |
|
175 | $ cd repo.pullbundle3 | |
175 | $ hg pull -r 1 |
|
176 | $ hg pull -r 1 | |
176 | pulling from http://localhost:$HGPORT2/ |
|
177 | pulling from http://localhost:$HGPORT2/ | |
177 | searching for changes |
|
178 | searching for changes | |
178 | adding changesets |
|
179 | adding changesets | |
179 | adding manifests |
|
180 | adding manifests | |
180 | adding file changes |
|
181 | adding file changes | |
181 | added 0 changesets with 0 changes to 1 files |
|
182 | added 0 changesets with 0 changes to 1 files | |
182 | abort: 00changelog.i@ed1b79f46b9a: no node! |
|
183 | abort: 00changelog.i@ed1b79f46b9a: no node! | |
183 | [255] |
|
184 | [255] | |
184 | $ cd .. |
|
185 | $ cd .. | |
185 | $ killdaemons.py |
|
186 | $ killdaemons.py | |
186 | $ grep 'sending pullbundle ' repo/.hg/blackbox.log |
|
187 | $ grep 'sending pullbundle ' repo/.hg/blackbox.log | |
187 | * sending pullbundle "0.hg" (glob) |
|
188 | * sending pullbundle "0.hg" (glob) | |
188 | * sending pullbundle "0.hg" (glob) |
|
189 | * sending pullbundle "0.hg" (glob) | |
189 | $ rm repo/.hg/blackbox.log |
|
190 | $ rm repo/.hg/blackbox.log | |
190 |
|
191 | |||
191 | Test processing when nodes used in the pullbundle.manifest end up being hidden |
|
192 | Test processing when nodes used in the pullbundle.manifest end up being hidden | |
192 |
|
193 | |||
193 | $ hg --repo repo debugobsolete ed1b79f46b9a29f5a6efa59cf12fcfca43bead5a |
|
194 | $ hg --repo repo debugobsolete ed1b79f46b9a29f5a6efa59cf12fcfca43bead5a | |
194 | 1 new obsolescence markers |
|
195 | 1 new obsolescence markers | |
195 | obsoleted 1 changesets |
|
196 | obsoleted 1 changesets | |
196 | $ hg serve --repo repo --config server.view=visible -p $HGPORT -d --pid-file=hg.pid -E errors.log |
|
197 | $ hg serve --repo repo --config server.view=visible -p $HGPORT -d --pid-file=hg.pid -E errors.log | |
197 | $ cat hg.pid >> $DAEMON_PIDS |
|
198 | $ cat hg.pid >> $DAEMON_PIDS | |
198 | $ hg clone http://localhost:$HGPORT repo-obs |
|
199 | $ hg clone http://localhost:$HGPORT repo-obs | |
199 | requesting all changes |
|
200 | requesting all changes | |
200 | adding changesets |
|
201 | adding changesets | |
201 | adding manifests |
|
202 | adding manifests | |
202 | adding file changes |
|
203 | adding file changes | |
203 | adding changesets |
|
204 | adding changesets | |
204 | adding manifests |
|
205 | adding manifests | |
205 | adding file changes |
|
206 | adding file changes | |
206 | added 2 changesets with 2 changes to 2 files |
|
207 | added 2 changesets with 2 changes to 2 files | |
207 | new changesets bbd179dfa0a7:effea6de0384 |
|
208 | new changesets bbd179dfa0a7:effea6de0384 | |
208 | updating to branch default |
|
209 | updating to branch default | |
209 | 2 files updated, 0 files merged, 0 files removed, 0 files unresolved |
|
210 | 2 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
210 | $ killdaemons.py |
|
211 | $ killdaemons.py |
General Comments 0
You need to be logged in to leave comments.
Login now