##// END OF EJS Templates
tests: demonstrate `hg log -r . <file>` linkrev bug...
Martin von Zweigbergk -
r42383:c96507f6 default
parent child Browse files
Show More
@@ -1,2759 +1,2772 b''
1 Log on empty repository: checking consistency
1 Log on empty repository: checking consistency
2
2
3 $ hg init empty
3 $ hg init empty
4 $ cd empty
4 $ cd empty
5 $ hg log
5 $ hg log
6 $ hg log -r 1
6 $ hg log -r 1
7 abort: unknown revision '1'!
7 abort: unknown revision '1'!
8 [255]
8 [255]
9 $ hg log -r -1:0
9 $ hg log -r -1:0
10 abort: unknown revision '-1'!
10 abort: unknown revision '-1'!
11 [255]
11 [255]
12 $ hg log -r 'branch(name)'
12 $ hg log -r 'branch(name)'
13 abort: unknown revision 'name'!
13 abort: unknown revision 'name'!
14 [255]
14 [255]
15 $ hg log -r null -q
15 $ hg log -r null -q
16 -1:000000000000
16 -1:000000000000
17
17
18 $ cd ..
18 $ cd ..
19
19
20 The g is crafted to have 2 filelog topological heads in a linear
20 The g is crafted to have 2 filelog topological heads in a linear
21 changeset graph
21 changeset graph
22
22
23 $ hg init a
23 $ hg init a
24 $ cd a
24 $ cd a
25 $ echo a > a
25 $ echo a > a
26 $ echo f > f
26 $ echo f > f
27 $ hg ci -Ama -d '1 0'
27 $ hg ci -Ama -d '1 0'
28 adding a
28 adding a
29 adding f
29 adding f
30
30
31 $ hg cp a b
31 $ hg cp a b
32 $ hg cp f g
32 $ hg cp f g
33 $ hg ci -mb -d '2 0'
33 $ hg ci -mb -d '2 0'
34
34
35 $ mkdir dir
35 $ mkdir dir
36 $ hg mv b dir
36 $ hg mv b dir
37 $ echo g >> g
37 $ echo g >> g
38 $ echo f >> f
38 $ echo f >> f
39 $ hg ci -mc -d '3 0'
39 $ hg ci -mc -d '3 0'
40
40
41 $ hg mv a b
41 $ hg mv a b
42 $ hg cp -f f g
42 $ hg cp -f f g
43 $ echo a > d
43 $ echo a > d
44 $ hg add d
44 $ hg add d
45 $ hg ci -md -d '4 0'
45 $ hg ci -md -d '4 0'
46
46
47 $ hg mv dir/b e
47 $ hg mv dir/b e
48 $ hg ci -me -d '5 0'
48 $ hg ci -me -d '5 0'
49
49
50 Make sure largefiles doesn't interfere with logging a regular file
50 Make sure largefiles doesn't interfere with logging a regular file
51 $ hg --debug log a -T '{rev}: {desc}\n' --config extensions.largefiles=
51 $ hg --debug log a -T '{rev}: {desc}\n' --config extensions.largefiles=
52 The fsmonitor extension is incompatible with the largefiles extension and has been disabled. (fsmonitor !)
52 The fsmonitor extension is incompatible with the largefiles extension and has been disabled. (fsmonitor !)
53 updated patterns: .hglf/a, a
53 updated patterns: .hglf/a, a
54 0: a
54 0: a
55 $ hg log a
55 $ hg log a
56 changeset: 0:9161b9aeaf16
56 changeset: 0:9161b9aeaf16
57 user: test
57 user: test
58 date: Thu Jan 01 00:00:01 1970 +0000
58 date: Thu Jan 01 00:00:01 1970 +0000
59 summary: a
59 summary: a
60
60
61 $ hg log glob:a*
61 $ hg log glob:a*
62 changeset: 3:2ca5ba701980
62 changeset: 3:2ca5ba701980
63 user: test
63 user: test
64 date: Thu Jan 01 00:00:04 1970 +0000
64 date: Thu Jan 01 00:00:04 1970 +0000
65 summary: d
65 summary: d
66
66
67 changeset: 0:9161b9aeaf16
67 changeset: 0:9161b9aeaf16
68 user: test
68 user: test
69 date: Thu Jan 01 00:00:01 1970 +0000
69 date: Thu Jan 01 00:00:01 1970 +0000
70 summary: a
70 summary: a
71
71
72 $ hg --debug log glob:a* -T '{rev}: {desc}\n' --config extensions.largefiles=
72 $ hg --debug log glob:a* -T '{rev}: {desc}\n' --config extensions.largefiles=
73 The fsmonitor extension is incompatible with the largefiles extension and has been disabled. (fsmonitor !)
73 The fsmonitor extension is incompatible with the largefiles extension and has been disabled. (fsmonitor !)
74 updated patterns: glob:.hglf/a*, glob:a*
74 updated patterns: glob:.hglf/a*, glob:a*
75 3: d
75 3: d
76 0: a
76 0: a
77
77
78 log on directory
78 log on directory
79
79
80 $ hg log dir
80 $ hg log dir
81 changeset: 4:7e4639b4691b
81 changeset: 4:7e4639b4691b
82 tag: tip
82 tag: tip
83 user: test
83 user: test
84 date: Thu Jan 01 00:00:05 1970 +0000
84 date: Thu Jan 01 00:00:05 1970 +0000
85 summary: e
85 summary: e
86
86
87 changeset: 2:f8954cd4dc1f
87 changeset: 2:f8954cd4dc1f
88 user: test
88 user: test
89 date: Thu Jan 01 00:00:03 1970 +0000
89 date: Thu Jan 01 00:00:03 1970 +0000
90 summary: c
90 summary: c
91
91
92 $ hg log somethingthatdoesntexist dir
92 $ hg log somethingthatdoesntexist dir
93 changeset: 4:7e4639b4691b
93 changeset: 4:7e4639b4691b
94 tag: tip
94 tag: tip
95 user: test
95 user: test
96 date: Thu Jan 01 00:00:05 1970 +0000
96 date: Thu Jan 01 00:00:05 1970 +0000
97 summary: e
97 summary: e
98
98
99 changeset: 2:f8954cd4dc1f
99 changeset: 2:f8954cd4dc1f
100 user: test
100 user: test
101 date: Thu Jan 01 00:00:03 1970 +0000
101 date: Thu Jan 01 00:00:03 1970 +0000
102 summary: c
102 summary: c
103
103
104
104
105 -X, with explicit path
105 -X, with explicit path
106
106
107 $ hg log a -X a
107 $ hg log a -X a
108
108
109 -f, non-existent directory
109 -f, non-existent directory
110
110
111 $ hg log -f dir
111 $ hg log -f dir
112 abort: cannot follow file not in parent revision: "dir"
112 abort: cannot follow file not in parent revision: "dir"
113 [255]
113 [255]
114
114
115 -f, directory
115 -f, directory
116
116
117 $ hg up -q 3
117 $ hg up -q 3
118 $ hg log -f dir
118 $ hg log -f dir
119 changeset: 2:f8954cd4dc1f
119 changeset: 2:f8954cd4dc1f
120 user: test
120 user: test
121 date: Thu Jan 01 00:00:03 1970 +0000
121 date: Thu Jan 01 00:00:03 1970 +0000
122 summary: c
122 summary: c
123
123
124 -f, directory with --patch
124 -f, directory with --patch
125
125
126 $ hg log -f dir -p
126 $ hg log -f dir -p
127 changeset: 2:f8954cd4dc1f
127 changeset: 2:f8954cd4dc1f
128 user: test
128 user: test
129 date: Thu Jan 01 00:00:03 1970 +0000
129 date: Thu Jan 01 00:00:03 1970 +0000
130 summary: c
130 summary: c
131
131
132 diff -r d89b0a12d229 -r f8954cd4dc1f dir/b
132 diff -r d89b0a12d229 -r f8954cd4dc1f dir/b
133 --- /dev/null* (glob)
133 --- /dev/null* (glob)
134 +++ b/dir/b* (glob)
134 +++ b/dir/b* (glob)
135 @@ -0,0 +1,1 @@
135 @@ -0,0 +1,1 @@
136 +a
136 +a
137
137
138
138
139 -f, pattern
139 -f, pattern
140
140
141 $ hg log -f -I 'dir**' -p
141 $ hg log -f -I 'dir**' -p
142 changeset: 2:f8954cd4dc1f
142 changeset: 2:f8954cd4dc1f
143 user: test
143 user: test
144 date: Thu Jan 01 00:00:03 1970 +0000
144 date: Thu Jan 01 00:00:03 1970 +0000
145 summary: c
145 summary: c
146
146
147 diff -r d89b0a12d229 -r f8954cd4dc1f dir/b
147 diff -r d89b0a12d229 -r f8954cd4dc1f dir/b
148 --- /dev/null* (glob)
148 --- /dev/null* (glob)
149 +++ b/dir/b* (glob)
149 +++ b/dir/b* (glob)
150 @@ -0,0 +1,1 @@
150 @@ -0,0 +1,1 @@
151 +a
151 +a
152
152
153 $ hg up -q 4
153 $ hg up -q 4
154
154
155 -f, a wrong style
155 -f, a wrong style
156
156
157 $ hg log -f -l1 --style something
157 $ hg log -f -l1 --style something
158 abort: style 'something' not found
158 abort: style 'something' not found
159 (available styles: bisect, changelog, compact, default, phases, show, status, xml)
159 (available styles: bisect, changelog, compact, default, phases, show, status, xml)
160 [255]
160 [255]
161
161
162 -f, phases style
162 -f, phases style
163
163
164
164
165 $ hg log -f -l1 --style phases
165 $ hg log -f -l1 --style phases
166 changeset: 4:7e4639b4691b
166 changeset: 4:7e4639b4691b
167 tag: tip
167 tag: tip
168 phase: draft
168 phase: draft
169 user: test
169 user: test
170 date: Thu Jan 01 00:00:05 1970 +0000
170 date: Thu Jan 01 00:00:05 1970 +0000
171 summary: e
171 summary: e
172
172
173
173
174 $ hg log -f -l1 --style phases -q
174 $ hg log -f -l1 --style phases -q
175 4:7e4639b4691b
175 4:7e4639b4691b
176
176
177 -f, but no args
177 -f, but no args
178
178
179 $ hg log -f
179 $ hg log -f
180 changeset: 4:7e4639b4691b
180 changeset: 4:7e4639b4691b
181 tag: tip
181 tag: tip
182 user: test
182 user: test
183 date: Thu Jan 01 00:00:05 1970 +0000
183 date: Thu Jan 01 00:00:05 1970 +0000
184 summary: e
184 summary: e
185
185
186 changeset: 3:2ca5ba701980
186 changeset: 3:2ca5ba701980
187 user: test
187 user: test
188 date: Thu Jan 01 00:00:04 1970 +0000
188 date: Thu Jan 01 00:00:04 1970 +0000
189 summary: d
189 summary: d
190
190
191 changeset: 2:f8954cd4dc1f
191 changeset: 2:f8954cd4dc1f
192 user: test
192 user: test
193 date: Thu Jan 01 00:00:03 1970 +0000
193 date: Thu Jan 01 00:00:03 1970 +0000
194 summary: c
194 summary: c
195
195
196 changeset: 1:d89b0a12d229
196 changeset: 1:d89b0a12d229
197 user: test
197 user: test
198 date: Thu Jan 01 00:00:02 1970 +0000
198 date: Thu Jan 01 00:00:02 1970 +0000
199 summary: b
199 summary: b
200
200
201 changeset: 0:9161b9aeaf16
201 changeset: 0:9161b9aeaf16
202 user: test
202 user: test
203 date: Thu Jan 01 00:00:01 1970 +0000
203 date: Thu Jan 01 00:00:01 1970 +0000
204 summary: a
204 summary: a
205
205
206
206
207 one rename
207 one rename
208
208
209 $ hg up -q 2
209 $ hg up -q 2
210 $ hg log -vf a
210 $ hg log -vf a
211 changeset: 0:9161b9aeaf16
211 changeset: 0:9161b9aeaf16
212 user: test
212 user: test
213 date: Thu Jan 01 00:00:01 1970 +0000
213 date: Thu Jan 01 00:00:01 1970 +0000
214 files: a f
214 files: a f
215 description:
215 description:
216 a
216 a
217
217
218
218
219
219
220 many renames
220 many renames
221
221
222 $ hg up -q tip
222 $ hg up -q tip
223 $ hg log -vf e
223 $ hg log -vf e
224 changeset: 4:7e4639b4691b
224 changeset: 4:7e4639b4691b
225 tag: tip
225 tag: tip
226 user: test
226 user: test
227 date: Thu Jan 01 00:00:05 1970 +0000
227 date: Thu Jan 01 00:00:05 1970 +0000
228 files: dir/b e
228 files: dir/b e
229 description:
229 description:
230 e
230 e
231
231
232
232
233 changeset: 2:f8954cd4dc1f
233 changeset: 2:f8954cd4dc1f
234 user: test
234 user: test
235 date: Thu Jan 01 00:00:03 1970 +0000
235 date: Thu Jan 01 00:00:03 1970 +0000
236 files: b dir/b f g
236 files: b dir/b f g
237 description:
237 description:
238 c
238 c
239
239
240
240
241 changeset: 1:d89b0a12d229
241 changeset: 1:d89b0a12d229
242 user: test
242 user: test
243 date: Thu Jan 01 00:00:02 1970 +0000
243 date: Thu Jan 01 00:00:02 1970 +0000
244 files: b g
244 files: b g
245 description:
245 description:
246 b
246 b
247
247
248
248
249 changeset: 0:9161b9aeaf16
249 changeset: 0:9161b9aeaf16
250 user: test
250 user: test
251 date: Thu Jan 01 00:00:01 1970 +0000
251 date: Thu Jan 01 00:00:01 1970 +0000
252 files: a f
252 files: a f
253 description:
253 description:
254 a
254 a
255
255
256
256
257
257
258
258
259 log -pf dir/b
259 log -pf dir/b
260
260
261 $ hg up -q 3
261 $ hg up -q 3
262 $ hg log -pf dir/b
262 $ hg log -pf dir/b
263 changeset: 2:f8954cd4dc1f
263 changeset: 2:f8954cd4dc1f
264 user: test
264 user: test
265 date: Thu Jan 01 00:00:03 1970 +0000
265 date: Thu Jan 01 00:00:03 1970 +0000
266 summary: c
266 summary: c
267
267
268 diff -r d89b0a12d229 -r f8954cd4dc1f dir/b
268 diff -r d89b0a12d229 -r f8954cd4dc1f dir/b
269 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
269 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
270 +++ b/dir/b Thu Jan 01 00:00:03 1970 +0000
270 +++ b/dir/b Thu Jan 01 00:00:03 1970 +0000
271 @@ -0,0 +1,1 @@
271 @@ -0,0 +1,1 @@
272 +a
272 +a
273
273
274 changeset: 1:d89b0a12d229
274 changeset: 1:d89b0a12d229
275 user: test
275 user: test
276 date: Thu Jan 01 00:00:02 1970 +0000
276 date: Thu Jan 01 00:00:02 1970 +0000
277 summary: b
277 summary: b
278
278
279 diff -r 9161b9aeaf16 -r d89b0a12d229 b
279 diff -r 9161b9aeaf16 -r d89b0a12d229 b
280 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
280 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
281 +++ b/b Thu Jan 01 00:00:02 1970 +0000
281 +++ b/b Thu Jan 01 00:00:02 1970 +0000
282 @@ -0,0 +1,1 @@
282 @@ -0,0 +1,1 @@
283 +a
283 +a
284
284
285 changeset: 0:9161b9aeaf16
285 changeset: 0:9161b9aeaf16
286 user: test
286 user: test
287 date: Thu Jan 01 00:00:01 1970 +0000
287 date: Thu Jan 01 00:00:01 1970 +0000
288 summary: a
288 summary: a
289
289
290 diff -r 000000000000 -r 9161b9aeaf16 a
290 diff -r 000000000000 -r 9161b9aeaf16 a
291 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
291 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
292 +++ b/a Thu Jan 01 00:00:01 1970 +0000
292 +++ b/a Thu Jan 01 00:00:01 1970 +0000
293 @@ -0,0 +1,1 @@
293 @@ -0,0 +1,1 @@
294 +a
294 +a
295
295
296
296
297 log -pf b inside dir
297 log -pf b inside dir
298
298
299 $ hg --cwd=dir log -pf b
299 $ hg --cwd=dir log -pf b
300 changeset: 2:f8954cd4dc1f
300 changeset: 2:f8954cd4dc1f
301 user: test
301 user: test
302 date: Thu Jan 01 00:00:03 1970 +0000
302 date: Thu Jan 01 00:00:03 1970 +0000
303 summary: c
303 summary: c
304
304
305 diff -r d89b0a12d229 -r f8954cd4dc1f dir/b
305 diff -r d89b0a12d229 -r f8954cd4dc1f dir/b
306 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
306 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
307 +++ b/dir/b Thu Jan 01 00:00:03 1970 +0000
307 +++ b/dir/b Thu Jan 01 00:00:03 1970 +0000
308 @@ -0,0 +1,1 @@
308 @@ -0,0 +1,1 @@
309 +a
309 +a
310
310
311 changeset: 1:d89b0a12d229
311 changeset: 1:d89b0a12d229
312 user: test
312 user: test
313 date: Thu Jan 01 00:00:02 1970 +0000
313 date: Thu Jan 01 00:00:02 1970 +0000
314 summary: b
314 summary: b
315
315
316 diff -r 9161b9aeaf16 -r d89b0a12d229 b
316 diff -r 9161b9aeaf16 -r d89b0a12d229 b
317 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
317 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
318 +++ b/b Thu Jan 01 00:00:02 1970 +0000
318 +++ b/b Thu Jan 01 00:00:02 1970 +0000
319 @@ -0,0 +1,1 @@
319 @@ -0,0 +1,1 @@
320 +a
320 +a
321
321
322 changeset: 0:9161b9aeaf16
322 changeset: 0:9161b9aeaf16
323 user: test
323 user: test
324 date: Thu Jan 01 00:00:01 1970 +0000
324 date: Thu Jan 01 00:00:01 1970 +0000
325 summary: a
325 summary: a
326
326
327 diff -r 000000000000 -r 9161b9aeaf16 a
327 diff -r 000000000000 -r 9161b9aeaf16 a
328 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
328 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
329 +++ b/a Thu Jan 01 00:00:01 1970 +0000
329 +++ b/a Thu Jan 01 00:00:01 1970 +0000
330 @@ -0,0 +1,1 @@
330 @@ -0,0 +1,1 @@
331 +a
331 +a
332
332
333
333
334 log -pf, but no args
334 log -pf, but no args
335
335
336 $ hg log -pf
336 $ hg log -pf
337 changeset: 3:2ca5ba701980
337 changeset: 3:2ca5ba701980
338 user: test
338 user: test
339 date: Thu Jan 01 00:00:04 1970 +0000
339 date: Thu Jan 01 00:00:04 1970 +0000
340 summary: d
340 summary: d
341
341
342 diff -r f8954cd4dc1f -r 2ca5ba701980 a
342 diff -r f8954cd4dc1f -r 2ca5ba701980 a
343 --- a/a Thu Jan 01 00:00:03 1970 +0000
343 --- a/a Thu Jan 01 00:00:03 1970 +0000
344 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
344 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
345 @@ -1,1 +0,0 @@
345 @@ -1,1 +0,0 @@
346 -a
346 -a
347 diff -r f8954cd4dc1f -r 2ca5ba701980 b
347 diff -r f8954cd4dc1f -r 2ca5ba701980 b
348 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
348 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
349 +++ b/b Thu Jan 01 00:00:04 1970 +0000
349 +++ b/b Thu Jan 01 00:00:04 1970 +0000
350 @@ -0,0 +1,1 @@
350 @@ -0,0 +1,1 @@
351 +a
351 +a
352 diff -r f8954cd4dc1f -r 2ca5ba701980 d
352 diff -r f8954cd4dc1f -r 2ca5ba701980 d
353 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
353 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
354 +++ b/d Thu Jan 01 00:00:04 1970 +0000
354 +++ b/d Thu Jan 01 00:00:04 1970 +0000
355 @@ -0,0 +1,1 @@
355 @@ -0,0 +1,1 @@
356 +a
356 +a
357 diff -r f8954cd4dc1f -r 2ca5ba701980 g
357 diff -r f8954cd4dc1f -r 2ca5ba701980 g
358 --- a/g Thu Jan 01 00:00:03 1970 +0000
358 --- a/g Thu Jan 01 00:00:03 1970 +0000
359 +++ b/g Thu Jan 01 00:00:04 1970 +0000
359 +++ b/g Thu Jan 01 00:00:04 1970 +0000
360 @@ -1,2 +1,2 @@
360 @@ -1,2 +1,2 @@
361 f
361 f
362 -g
362 -g
363 +f
363 +f
364
364
365 changeset: 2:f8954cd4dc1f
365 changeset: 2:f8954cd4dc1f
366 user: test
366 user: test
367 date: Thu Jan 01 00:00:03 1970 +0000
367 date: Thu Jan 01 00:00:03 1970 +0000
368 summary: c
368 summary: c
369
369
370 diff -r d89b0a12d229 -r f8954cd4dc1f b
370 diff -r d89b0a12d229 -r f8954cd4dc1f b
371 --- a/b Thu Jan 01 00:00:02 1970 +0000
371 --- a/b Thu Jan 01 00:00:02 1970 +0000
372 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
372 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
373 @@ -1,1 +0,0 @@
373 @@ -1,1 +0,0 @@
374 -a
374 -a
375 diff -r d89b0a12d229 -r f8954cd4dc1f dir/b
375 diff -r d89b0a12d229 -r f8954cd4dc1f dir/b
376 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
376 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
377 +++ b/dir/b Thu Jan 01 00:00:03 1970 +0000
377 +++ b/dir/b Thu Jan 01 00:00:03 1970 +0000
378 @@ -0,0 +1,1 @@
378 @@ -0,0 +1,1 @@
379 +a
379 +a
380 diff -r d89b0a12d229 -r f8954cd4dc1f f
380 diff -r d89b0a12d229 -r f8954cd4dc1f f
381 --- a/f Thu Jan 01 00:00:02 1970 +0000
381 --- a/f Thu Jan 01 00:00:02 1970 +0000
382 +++ b/f Thu Jan 01 00:00:03 1970 +0000
382 +++ b/f Thu Jan 01 00:00:03 1970 +0000
383 @@ -1,1 +1,2 @@
383 @@ -1,1 +1,2 @@
384 f
384 f
385 +f
385 +f
386 diff -r d89b0a12d229 -r f8954cd4dc1f g
386 diff -r d89b0a12d229 -r f8954cd4dc1f g
387 --- a/g Thu Jan 01 00:00:02 1970 +0000
387 --- a/g Thu Jan 01 00:00:02 1970 +0000
388 +++ b/g Thu Jan 01 00:00:03 1970 +0000
388 +++ b/g Thu Jan 01 00:00:03 1970 +0000
389 @@ -1,1 +1,2 @@
389 @@ -1,1 +1,2 @@
390 f
390 f
391 +g
391 +g
392
392
393 changeset: 1:d89b0a12d229
393 changeset: 1:d89b0a12d229
394 user: test
394 user: test
395 date: Thu Jan 01 00:00:02 1970 +0000
395 date: Thu Jan 01 00:00:02 1970 +0000
396 summary: b
396 summary: b
397
397
398 diff -r 9161b9aeaf16 -r d89b0a12d229 b
398 diff -r 9161b9aeaf16 -r d89b0a12d229 b
399 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
399 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
400 +++ b/b Thu Jan 01 00:00:02 1970 +0000
400 +++ b/b Thu Jan 01 00:00:02 1970 +0000
401 @@ -0,0 +1,1 @@
401 @@ -0,0 +1,1 @@
402 +a
402 +a
403 diff -r 9161b9aeaf16 -r d89b0a12d229 g
403 diff -r 9161b9aeaf16 -r d89b0a12d229 g
404 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
404 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
405 +++ b/g Thu Jan 01 00:00:02 1970 +0000
405 +++ b/g Thu Jan 01 00:00:02 1970 +0000
406 @@ -0,0 +1,1 @@
406 @@ -0,0 +1,1 @@
407 +f
407 +f
408
408
409 changeset: 0:9161b9aeaf16
409 changeset: 0:9161b9aeaf16
410 user: test
410 user: test
411 date: Thu Jan 01 00:00:01 1970 +0000
411 date: Thu Jan 01 00:00:01 1970 +0000
412 summary: a
412 summary: a
413
413
414 diff -r 000000000000 -r 9161b9aeaf16 a
414 diff -r 000000000000 -r 9161b9aeaf16 a
415 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
415 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
416 +++ b/a Thu Jan 01 00:00:01 1970 +0000
416 +++ b/a Thu Jan 01 00:00:01 1970 +0000
417 @@ -0,0 +1,1 @@
417 @@ -0,0 +1,1 @@
418 +a
418 +a
419 diff -r 000000000000 -r 9161b9aeaf16 f
419 diff -r 000000000000 -r 9161b9aeaf16 f
420 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
420 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
421 +++ b/f Thu Jan 01 00:00:01 1970 +0000
421 +++ b/f Thu Jan 01 00:00:01 1970 +0000
422 @@ -0,0 +1,1 @@
422 @@ -0,0 +1,1 @@
423 +f
423 +f
424
424
425
425
426 log -vf dir/b
426 log -vf dir/b
427
427
428 $ hg log -vf dir/b
428 $ hg log -vf dir/b
429 changeset: 2:f8954cd4dc1f
429 changeset: 2:f8954cd4dc1f
430 user: test
430 user: test
431 date: Thu Jan 01 00:00:03 1970 +0000
431 date: Thu Jan 01 00:00:03 1970 +0000
432 files: b dir/b f g
432 files: b dir/b f g
433 description:
433 description:
434 c
434 c
435
435
436
436
437 changeset: 1:d89b0a12d229
437 changeset: 1:d89b0a12d229
438 user: test
438 user: test
439 date: Thu Jan 01 00:00:02 1970 +0000
439 date: Thu Jan 01 00:00:02 1970 +0000
440 files: b g
440 files: b g
441 description:
441 description:
442 b
442 b
443
443
444
444
445 changeset: 0:9161b9aeaf16
445 changeset: 0:9161b9aeaf16
446 user: test
446 user: test
447 date: Thu Jan 01 00:00:01 1970 +0000
447 date: Thu Jan 01 00:00:01 1970 +0000
448 files: a f
448 files: a f
449 description:
449 description:
450 a
450 a
451
451
452
452
453
453
454
454
455 -f and multiple filelog heads
455 -f and multiple filelog heads
456
456
457 $ hg up -q 2
457 $ hg up -q 2
458 $ hg log -f g --template '{rev}\n'
458 $ hg log -f g --template '{rev}\n'
459 2
459 2
460 1
460 1
461 0
461 0
462 $ hg up -q tip
462 $ hg up -q tip
463 $ hg log -f g --template '{rev}\n'
463 $ hg log -f g --template '{rev}\n'
464 3
464 3
465 2
465 2
466 0
466 0
467
467
468 follow files from the specified revisions (issue4959)
468 follow files from the specified revisions (issue4959)
469
469
470 $ hg log -G -T '{rev} {files},{file_copies % " {source}->{name}"}\n'
470 $ hg log -G -T '{rev} {files},{file_copies % " {source}->{name}"}\n'
471 @ 4 dir/b e, dir/b->e
471 @ 4 dir/b e, dir/b->e
472 |
472 |
473 o 3 a b d g, a->b f->g
473 o 3 a b d g, a->b f->g
474 |
474 |
475 o 2 b dir/b f g, b->dir/b
475 o 2 b dir/b f g, b->dir/b
476 |
476 |
477 o 1 b g, a->b f->g
477 o 1 b g, a->b f->g
478 |
478 |
479 o 0 a f,
479 o 0 a f,
480
480
481
481
482 $ hg log -T '{rev}\n' -fr 4 e
482 $ hg log -T '{rev}\n' -fr 4 e
483 4
483 4
484 2
484 2
485 1
485 1
486 0
486 0
487 $ hg log -T '{rev}\n' -fr 2 g
487 $ hg log -T '{rev}\n' -fr 2 g
488 2
488 2
489 1
489 1
490 0
490 0
491 $ hg log -T '{rev}\n' -fr '2+3' g
491 $ hg log -T '{rev}\n' -fr '2+3' g
492 3
492 3
493 2
493 2
494 1
494 1
495 0
495 0
496
496
497 follow files from the specified revisions with glob patterns (issue5053)
497 follow files from the specified revisions with glob patterns (issue5053)
498 (BROKEN: should follow copies from e@4)
498 (BROKEN: should follow copies from e@4)
499
499
500 $ hg log -T '{rev}\n' -fr4 e -X '[abcdfg]'
500 $ hg log -T '{rev}\n' -fr4 e -X '[abcdfg]'
501 4
501 4
502 2 (false !)
502 2 (false !)
503 1 (false !)
503 1 (false !)
504 0 (false !)
504 0 (false !)
505
505
506 follow files from the specified revisions with missing patterns
506 follow files from the specified revisions with missing patterns
507 (BROKEN: should follow copies from e@4)
507 (BROKEN: should follow copies from e@4)
508
508
509 $ hg log -T '{rev}\n' -fr4 e x
509 $ hg log -T '{rev}\n' -fr4 e x
510 4
510 4
511 2 (false !)
511 2 (false !)
512 1 (false !)
512 1 (false !)
513 0 (false !)
513 0 (false !)
514
514
515 follow files from the specified revisions across copies with -p/--patch
515 follow files from the specified revisions across copies with -p/--patch
516
516
517 $ hg log -T '== rev: {rev},{file_copies % " {source}->{name}"} ==\n' -fpr 4 e g
517 $ hg log -T '== rev: {rev},{file_copies % " {source}->{name}"} ==\n' -fpr 4 e g
518 == rev: 4, dir/b->e ==
518 == rev: 4, dir/b->e ==
519 diff -r 2ca5ba701980 -r 7e4639b4691b e
519 diff -r 2ca5ba701980 -r 7e4639b4691b e
520 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
520 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
521 +++ b/e Thu Jan 01 00:00:05 1970 +0000
521 +++ b/e Thu Jan 01 00:00:05 1970 +0000
522 @@ -0,0 +1,1 @@
522 @@ -0,0 +1,1 @@
523 +a
523 +a
524
524
525 == rev: 3, a->b f->g ==
525 == rev: 3, a->b f->g ==
526 diff -r f8954cd4dc1f -r 2ca5ba701980 g
526 diff -r f8954cd4dc1f -r 2ca5ba701980 g
527 --- a/g Thu Jan 01 00:00:03 1970 +0000
527 --- a/g Thu Jan 01 00:00:03 1970 +0000
528 +++ b/g Thu Jan 01 00:00:04 1970 +0000
528 +++ b/g Thu Jan 01 00:00:04 1970 +0000
529 @@ -1,2 +1,2 @@
529 @@ -1,2 +1,2 @@
530 f
530 f
531 -g
531 -g
532 +f
532 +f
533
533
534 == rev: 2, b->dir/b ==
534 == rev: 2, b->dir/b ==
535 diff -r d89b0a12d229 -r f8954cd4dc1f dir/b
535 diff -r d89b0a12d229 -r f8954cd4dc1f dir/b
536 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
536 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
537 +++ b/dir/b Thu Jan 01 00:00:03 1970 +0000
537 +++ b/dir/b Thu Jan 01 00:00:03 1970 +0000
538 @@ -0,0 +1,1 @@
538 @@ -0,0 +1,1 @@
539 +a
539 +a
540 diff -r d89b0a12d229 -r f8954cd4dc1f f
540 diff -r d89b0a12d229 -r f8954cd4dc1f f
541 --- a/f Thu Jan 01 00:00:02 1970 +0000
541 --- a/f Thu Jan 01 00:00:02 1970 +0000
542 +++ b/f Thu Jan 01 00:00:03 1970 +0000
542 +++ b/f Thu Jan 01 00:00:03 1970 +0000
543 @@ -1,1 +1,2 @@
543 @@ -1,1 +1,2 @@
544 f
544 f
545 +f
545 +f
546
546
547 == rev: 1, a->b f->g ==
547 == rev: 1, a->b f->g ==
548 diff -r 9161b9aeaf16 -r d89b0a12d229 b
548 diff -r 9161b9aeaf16 -r d89b0a12d229 b
549 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
549 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
550 +++ b/b Thu Jan 01 00:00:02 1970 +0000
550 +++ b/b Thu Jan 01 00:00:02 1970 +0000
551 @@ -0,0 +1,1 @@
551 @@ -0,0 +1,1 @@
552 +a
552 +a
553
553
554 == rev: 0, ==
554 == rev: 0, ==
555 diff -r 000000000000 -r 9161b9aeaf16 a
555 diff -r 000000000000 -r 9161b9aeaf16 a
556 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
556 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
557 +++ b/a Thu Jan 01 00:00:01 1970 +0000
557 +++ b/a Thu Jan 01 00:00:01 1970 +0000
558 @@ -0,0 +1,1 @@
558 @@ -0,0 +1,1 @@
559 +a
559 +a
560 diff -r 000000000000 -r 9161b9aeaf16 f
560 diff -r 000000000000 -r 9161b9aeaf16 f
561 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
561 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
562 +++ b/f Thu Jan 01 00:00:01 1970 +0000
562 +++ b/f Thu Jan 01 00:00:01 1970 +0000
563 @@ -0,0 +1,1 @@
563 @@ -0,0 +1,1 @@
564 +f
564 +f
565
565
566
566
567 log copies with --copies
567 log copies with --copies
568
568
569 $ hg log -vC --template '{rev} {file_copies}\n'
569 $ hg log -vC --template '{rev} {file_copies}\n'
570 4 e (dir/b)
570 4 e (dir/b)
571 3 b (a)g (f)
571 3 b (a)g (f)
572 2 dir/b (b)
572 2 dir/b (b)
573 1 b (a)g (f)
573 1 b (a)g (f)
574 0
574 0
575
575
576 log copies switch without --copies, with old filecopy template
576 log copies switch without --copies, with old filecopy template
577
577
578 $ hg log -v --template '{rev} {file_copies_switch%filecopy}\n'
578 $ hg log -v --template '{rev} {file_copies_switch%filecopy}\n'
579 4
579 4
580 3
580 3
581 2
581 2
582 1
582 1
583 0
583 0
584
584
585 log copies switch with --copies
585 log copies switch with --copies
586
586
587 $ hg log -vC --template '{rev} {file_copies_switch}\n'
587 $ hg log -vC --template '{rev} {file_copies_switch}\n'
588 4 e (dir/b)
588 4 e (dir/b)
589 3 b (a)g (f)
589 3 b (a)g (f)
590 2 dir/b (b)
590 2 dir/b (b)
591 1 b (a)g (f)
591 1 b (a)g (f)
592 0
592 0
593
593
594
594
595 log copies with hardcoded style and with --style=default
595 log copies with hardcoded style and with --style=default
596
596
597 $ hg log -vC -r4
597 $ hg log -vC -r4
598 changeset: 4:7e4639b4691b
598 changeset: 4:7e4639b4691b
599 tag: tip
599 tag: tip
600 user: test
600 user: test
601 date: Thu Jan 01 00:00:05 1970 +0000
601 date: Thu Jan 01 00:00:05 1970 +0000
602 files: dir/b e
602 files: dir/b e
603 copies: e (dir/b)
603 copies: e (dir/b)
604 description:
604 description:
605 e
605 e
606
606
607
607
608 $ hg log -vC -r4 --style=default
608 $ hg log -vC -r4 --style=default
609 changeset: 4:7e4639b4691b
609 changeset: 4:7e4639b4691b
610 tag: tip
610 tag: tip
611 user: test
611 user: test
612 date: Thu Jan 01 00:00:05 1970 +0000
612 date: Thu Jan 01 00:00:05 1970 +0000
613 files: dir/b e
613 files: dir/b e
614 copies: e (dir/b)
614 copies: e (dir/b)
615 description:
615 description:
616 e
616 e
617
617
618
618
619 $ hg log -vC -r4 -Tjson
619 $ hg log -vC -r4 -Tjson
620 [
620 [
621 {
621 {
622 "bookmarks": [],
622 "bookmarks": [],
623 "branch": "default",
623 "branch": "default",
624 "copies": {"e": "dir/b"},
624 "copies": {"e": "dir/b"},
625 "date": [5, 0],
625 "date": [5, 0],
626 "desc": "e",
626 "desc": "e",
627 "files": ["dir/b", "e"],
627 "files": ["dir/b", "e"],
628 "node": "7e4639b4691b9f84b81036a8d4fb218ce3c5e3a3",
628 "node": "7e4639b4691b9f84b81036a8d4fb218ce3c5e3a3",
629 "parents": ["2ca5ba7019804f1f597249caddf22a64d34df0ba"],
629 "parents": ["2ca5ba7019804f1f597249caddf22a64d34df0ba"],
630 "phase": "draft",
630 "phase": "draft",
631 "rev": 4,
631 "rev": 4,
632 "tags": ["tip"],
632 "tags": ["tip"],
633 "user": "test"
633 "user": "test"
634 }
634 }
635 ]
635 ]
636
636
637 log copies, non-linear manifest
637 log copies, non-linear manifest
638
638
639 $ hg up -C 3
639 $ hg up -C 3
640 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
640 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
641 $ hg mv dir/b e
641 $ hg mv dir/b e
642 $ echo foo > foo
642 $ echo foo > foo
643 $ hg ci -Ame2 -d '6 0'
643 $ hg ci -Ame2 -d '6 0'
644 adding foo
644 adding foo
645 created new head
645 created new head
646 $ hg log -v --template '{rev} {file_copies}\n' -r 5
646 $ hg log -v --template '{rev} {file_copies}\n' -r 5
647 5 e (dir/b)
647 5 e (dir/b)
648
648
649
649
650 log copies, execute bit set
650 log copies, execute bit set
651
651
652 #if execbit
652 #if execbit
653 $ chmod +x e
653 $ chmod +x e
654 $ hg ci -me3 -d '7 0'
654 $ hg ci -me3 -d '7 0'
655 $ hg log -v --template '{rev} {file_copies}\n' -r 6
655 $ hg log -v --template '{rev} {file_copies}\n' -r 6
656 6
656 6
657 #endif
657 #endif
658
658
659 log copies, empty set
659 log copies, empty set
660
660
661 $ hg log --copies -r '0 and not 0'
661 $ hg log --copies -r '0 and not 0'
662
662
663 log -p d
663 log -p d
664
664
665 $ hg log -pv d
665 $ hg log -pv d
666 changeset: 3:2ca5ba701980
666 changeset: 3:2ca5ba701980
667 user: test
667 user: test
668 date: Thu Jan 01 00:00:04 1970 +0000
668 date: Thu Jan 01 00:00:04 1970 +0000
669 files: a b d g
669 files: a b d g
670 description:
670 description:
671 d
671 d
672
672
673
673
674 diff -r f8954cd4dc1f -r 2ca5ba701980 d
674 diff -r f8954cd4dc1f -r 2ca5ba701980 d
675 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
675 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
676 +++ b/d Thu Jan 01 00:00:04 1970 +0000
676 +++ b/d Thu Jan 01 00:00:04 1970 +0000
677 @@ -0,0 +1,1 @@
677 @@ -0,0 +1,1 @@
678 +a
678 +a
679
679
680
680
681
681
682 log --removed file
682 log --removed file
683
683
684 $ hg log --removed -v a
684 $ hg log --removed -v a
685 changeset: 3:2ca5ba701980
685 changeset: 3:2ca5ba701980
686 user: test
686 user: test
687 date: Thu Jan 01 00:00:04 1970 +0000
687 date: Thu Jan 01 00:00:04 1970 +0000
688 files: a b d g
688 files: a b d g
689 description:
689 description:
690 d
690 d
691
691
692
692
693 changeset: 0:9161b9aeaf16
693 changeset: 0:9161b9aeaf16
694 user: test
694 user: test
695 date: Thu Jan 01 00:00:01 1970 +0000
695 date: Thu Jan 01 00:00:01 1970 +0000
696 files: a f
696 files: a f
697 description:
697 description:
698 a
698 a
699
699
700
700
701
701
702 log --removed revrange file
702 log --removed revrange file
703
703
704 $ hg log --removed -v -r0:2 a
704 $ hg log --removed -v -r0:2 a
705 changeset: 0:9161b9aeaf16
705 changeset: 0:9161b9aeaf16
706 user: test
706 user: test
707 date: Thu Jan 01 00:00:01 1970 +0000
707 date: Thu Jan 01 00:00:01 1970 +0000
708 files: a f
708 files: a f
709 description:
709 description:
710 a
710 a
711
711
712
712
713 $ cd ..
713 $ cd ..
714
714
715 log --follow tests
715 log --follow tests
716
716
717 $ hg init follow
717 $ hg init follow
718 $ cd follow
718 $ cd follow
719
719
720 $ echo base > base
720 $ echo base > base
721 $ hg ci -Ambase -d '1 0'
721 $ hg ci -Ambase -d '1 0'
722 adding base
722 adding base
723
723
724 $ echo r1 >> base
724 $ echo r1 >> base
725 $ hg ci -Amr1 -d '1 0'
725 $ hg ci -Amr1 -d '1 0'
726 $ echo r2 >> base
726 $ echo r2 >> base
727 $ hg ci -Amr2 -d '1 0'
727 $ hg ci -Amr2 -d '1 0'
728
728
729 $ hg up -C 1
729 $ hg up -C 1
730 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
730 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
731 $ echo b1 > b1
731 $ echo b1 > b1
732
732
733 log -r "follow('set:clean()')"
733 log -r "follow('set:clean()')"
734
734
735 $ hg log -r "follow('set:clean()')"
735 $ hg log -r "follow('set:clean()')"
736 changeset: 0:67e992f2c4f3
736 changeset: 0:67e992f2c4f3
737 user: test
737 user: test
738 date: Thu Jan 01 00:00:01 1970 +0000
738 date: Thu Jan 01 00:00:01 1970 +0000
739 summary: base
739 summary: base
740
740
741 changeset: 1:3d5bf5654eda
741 changeset: 1:3d5bf5654eda
742 user: test
742 user: test
743 date: Thu Jan 01 00:00:01 1970 +0000
743 date: Thu Jan 01 00:00:01 1970 +0000
744 summary: r1
744 summary: r1
745
745
746
746
747 $ hg ci -Amb1 -d '1 0'
747 $ hg ci -Amb1 -d '1 0'
748 adding b1
748 adding b1
749 created new head
749 created new head
750
750
751
751
752 log -f
752 log -f
753
753
754 $ hg log -f
754 $ hg log -f
755 changeset: 3:e62f78d544b4
755 changeset: 3:e62f78d544b4
756 tag: tip
756 tag: tip
757 parent: 1:3d5bf5654eda
757 parent: 1:3d5bf5654eda
758 user: test
758 user: test
759 date: Thu Jan 01 00:00:01 1970 +0000
759 date: Thu Jan 01 00:00:01 1970 +0000
760 summary: b1
760 summary: b1
761
761
762 changeset: 1:3d5bf5654eda
762 changeset: 1:3d5bf5654eda
763 user: test
763 user: test
764 date: Thu Jan 01 00:00:01 1970 +0000
764 date: Thu Jan 01 00:00:01 1970 +0000
765 summary: r1
765 summary: r1
766
766
767 changeset: 0:67e992f2c4f3
767 changeset: 0:67e992f2c4f3
768 user: test
768 user: test
769 date: Thu Jan 01 00:00:01 1970 +0000
769 date: Thu Jan 01 00:00:01 1970 +0000
770 summary: base
770 summary: base
771
771
772
772
773 log -r follow('glob:b*')
773 log -r follow('glob:b*')
774
774
775 $ hg log -r "follow('glob:b*')"
775 $ hg log -r "follow('glob:b*')"
776 changeset: 0:67e992f2c4f3
776 changeset: 0:67e992f2c4f3
777 user: test
777 user: test
778 date: Thu Jan 01 00:00:01 1970 +0000
778 date: Thu Jan 01 00:00:01 1970 +0000
779 summary: base
779 summary: base
780
780
781 changeset: 1:3d5bf5654eda
781 changeset: 1:3d5bf5654eda
782 user: test
782 user: test
783 date: Thu Jan 01 00:00:01 1970 +0000
783 date: Thu Jan 01 00:00:01 1970 +0000
784 summary: r1
784 summary: r1
785
785
786 changeset: 3:e62f78d544b4
786 changeset: 3:e62f78d544b4
787 tag: tip
787 tag: tip
788 parent: 1:3d5bf5654eda
788 parent: 1:3d5bf5654eda
789 user: test
789 user: test
790 date: Thu Jan 01 00:00:01 1970 +0000
790 date: Thu Jan 01 00:00:01 1970 +0000
791 summary: b1
791 summary: b1
792
792
793 log -f -r '1 + 4'
793 log -f -r '1 + 4'
794
794
795 $ hg up -C 0
795 $ hg up -C 0
796 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
796 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
797 $ echo b2 > b2
797 $ echo b2 > b2
798 $ hg ci -Amb2 -d '1 0'
798 $ hg ci -Amb2 -d '1 0'
799 adding b2
799 adding b2
800 created new head
800 created new head
801 $ hg log -f -r '1 + 4'
801 $ hg log -f -r '1 + 4'
802 changeset: 4:ddb82e70d1a1
802 changeset: 4:ddb82e70d1a1
803 tag: tip
803 tag: tip
804 parent: 0:67e992f2c4f3
804 parent: 0:67e992f2c4f3
805 user: test
805 user: test
806 date: Thu Jan 01 00:00:01 1970 +0000
806 date: Thu Jan 01 00:00:01 1970 +0000
807 summary: b2
807 summary: b2
808
808
809 changeset: 1:3d5bf5654eda
809 changeset: 1:3d5bf5654eda
810 user: test
810 user: test
811 date: Thu Jan 01 00:00:01 1970 +0000
811 date: Thu Jan 01 00:00:01 1970 +0000
812 summary: r1
812 summary: r1
813
813
814 changeset: 0:67e992f2c4f3
814 changeset: 0:67e992f2c4f3
815 user: test
815 user: test
816 date: Thu Jan 01 00:00:01 1970 +0000
816 date: Thu Jan 01 00:00:01 1970 +0000
817 summary: base
817 summary: base
818
818
819
819
820 log -fr with aliases: 'A' should be expanded, but 'reverse()' should have no
820 log -fr with aliases: 'A' should be expanded, but 'reverse()' should have no
821 effect
821 effect
822
822
823 $ hg log --config 'revsetalias.reverse(x)=x' --config 'revsetalias.A=1+4' -qfrA
823 $ hg log --config 'revsetalias.reverse(x)=x' --config 'revsetalias.A=1+4' -qfrA
824 4:ddb82e70d1a1
824 4:ddb82e70d1a1
825 1:3d5bf5654eda
825 1:3d5bf5654eda
826 0:67e992f2c4f3
826 0:67e992f2c4f3
827
827
828 log -r "follow('set:grep(b2)')"
828 log -r "follow('set:grep(b2)')"
829
829
830 $ hg log -r "follow('set:grep(b2)')"
830 $ hg log -r "follow('set:grep(b2)')"
831 changeset: 4:ddb82e70d1a1
831 changeset: 4:ddb82e70d1a1
832 tag: tip
832 tag: tip
833 parent: 0:67e992f2c4f3
833 parent: 0:67e992f2c4f3
834 user: test
834 user: test
835 date: Thu Jan 01 00:00:01 1970 +0000
835 date: Thu Jan 01 00:00:01 1970 +0000
836 summary: b2
836 summary: b2
837
837
838 log -r "follow('set:grep(b2)', 4)"
838 log -r "follow('set:grep(b2)', 4)"
839
839
840 $ hg up -qC 0
840 $ hg up -qC 0
841 $ hg log -r "follow('set:grep(b2)', 4)"
841 $ hg log -r "follow('set:grep(b2)', 4)"
842 changeset: 4:ddb82e70d1a1
842 changeset: 4:ddb82e70d1a1
843 tag: tip
843 tag: tip
844 parent: 0:67e992f2c4f3
844 parent: 0:67e992f2c4f3
845 user: test
845 user: test
846 date: Thu Jan 01 00:00:01 1970 +0000
846 date: Thu Jan 01 00:00:01 1970 +0000
847 summary: b2
847 summary: b2
848
848
849
849
850 follow files starting from multiple revisions:
850 follow files starting from multiple revisions:
851
851
852 $ hg log -T '{rev}: {files}\n' -r "follow('glob:b?', startrev=2+3+4)"
852 $ hg log -T '{rev}: {files}\n' -r "follow('glob:b?', startrev=2+3+4)"
853 3: b1
853 3: b1
854 4: b2
854 4: b2
855
855
856 follow files starting from empty revision:
856 follow files starting from empty revision:
857
857
858 $ hg log -T '{rev}: {files}\n' -r "follow('glob:*', startrev=.-.)"
858 $ hg log -T '{rev}: {files}\n' -r "follow('glob:*', startrev=.-.)"
859
859
860 follow starting from revisions:
860 follow starting from revisions:
861
861
862 $ hg log -Gq -r "follow(startrev=2+4)"
862 $ hg log -Gq -r "follow(startrev=2+4)"
863 o 4:ddb82e70d1a1
863 o 4:ddb82e70d1a1
864 |
864 |
865 | o 2:60c670bf5b30
865 | o 2:60c670bf5b30
866 | |
866 | |
867 | o 1:3d5bf5654eda
867 | o 1:3d5bf5654eda
868 |/
868 |/
869 @ 0:67e992f2c4f3
869 @ 0:67e992f2c4f3
870
870
871
871
872 follow the current revision:
872 follow the current revision:
873
873
874 $ hg log -Gq -r "follow()"
874 $ hg log -Gq -r "follow()"
875 @ 0:67e992f2c4f3
875 @ 0:67e992f2c4f3
876
876
877
877
878 $ hg up -qC 4
878 $ hg up -qC 4
879
879
880 log -f -r null
880 log -f -r null
881
881
882 $ hg log -f -r null
882 $ hg log -f -r null
883 changeset: -1:000000000000
883 changeset: -1:000000000000
884 user:
884 user:
885 date: Thu Jan 01 00:00:00 1970 +0000
885 date: Thu Jan 01 00:00:00 1970 +0000
886
886
887 $ hg log -f -r null -G
887 $ hg log -f -r null -G
888 o changeset: -1:000000000000
888 o changeset: -1:000000000000
889 user:
889 user:
890 date: Thu Jan 01 00:00:00 1970 +0000
890 date: Thu Jan 01 00:00:00 1970 +0000
891
891
892
892
893
893
894 log -f with null parent
894 log -f with null parent
895
895
896 $ hg up -C null
896 $ hg up -C null
897 0 files updated, 0 files merged, 2 files removed, 0 files unresolved
897 0 files updated, 0 files merged, 2 files removed, 0 files unresolved
898 $ hg log -f
898 $ hg log -f
899
899
900
900
901 log -r . with two parents
901 log -r . with two parents
902
902
903 $ hg up -C 3
903 $ hg up -C 3
904 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
904 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
905 $ hg merge tip
905 $ hg merge tip
906 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
906 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
907 (branch merge, don't forget to commit)
907 (branch merge, don't forget to commit)
908 $ hg log -r .
908 $ hg log -r .
909 changeset: 3:e62f78d544b4
909 changeset: 3:e62f78d544b4
910 parent: 1:3d5bf5654eda
910 parent: 1:3d5bf5654eda
911 user: test
911 user: test
912 date: Thu Jan 01 00:00:01 1970 +0000
912 date: Thu Jan 01 00:00:01 1970 +0000
913 summary: b1
913 summary: b1
914
914
915
915
916
916
917 log -r . with one parent
917 log -r . with one parent
918
918
919 $ hg ci -mm12 -d '1 0'
919 $ hg ci -mm12 -d '1 0'
920 $ hg log -r .
920 $ hg log -r .
921 changeset: 5:302e9dd6890d
921 changeset: 5:302e9dd6890d
922 tag: tip
922 tag: tip
923 parent: 3:e62f78d544b4
923 parent: 3:e62f78d544b4
924 parent: 4:ddb82e70d1a1
924 parent: 4:ddb82e70d1a1
925 user: test
925 user: test
926 date: Thu Jan 01 00:00:01 1970 +0000
926 date: Thu Jan 01 00:00:01 1970 +0000
927 summary: m12
927 summary: m12
928
928
929
929
930 $ echo postm >> b1
930 $ echo postm >> b1
931 $ hg ci -Amb1.1 -d'1 0'
931 $ hg ci -Amb1.1 -d'1 0'
932
932
933
933
934 log --follow-first
934 log --follow-first
935
935
936 $ hg log --follow-first
936 $ hg log --follow-first
937 changeset: 6:2404bbcab562
937 changeset: 6:2404bbcab562
938 tag: tip
938 tag: tip
939 user: test
939 user: test
940 date: Thu Jan 01 00:00:01 1970 +0000
940 date: Thu Jan 01 00:00:01 1970 +0000
941 summary: b1.1
941 summary: b1.1
942
942
943 changeset: 5:302e9dd6890d
943 changeset: 5:302e9dd6890d
944 parent: 3:e62f78d544b4
944 parent: 3:e62f78d544b4
945 parent: 4:ddb82e70d1a1
945 parent: 4:ddb82e70d1a1
946 user: test
946 user: test
947 date: Thu Jan 01 00:00:01 1970 +0000
947 date: Thu Jan 01 00:00:01 1970 +0000
948 summary: m12
948 summary: m12
949
949
950 changeset: 3:e62f78d544b4
950 changeset: 3:e62f78d544b4
951 parent: 1:3d5bf5654eda
951 parent: 1:3d5bf5654eda
952 user: test
952 user: test
953 date: Thu Jan 01 00:00:01 1970 +0000
953 date: Thu Jan 01 00:00:01 1970 +0000
954 summary: b1
954 summary: b1
955
955
956 changeset: 1:3d5bf5654eda
956 changeset: 1:3d5bf5654eda
957 user: test
957 user: test
958 date: Thu Jan 01 00:00:01 1970 +0000
958 date: Thu Jan 01 00:00:01 1970 +0000
959 summary: r1
959 summary: r1
960
960
961 changeset: 0:67e992f2c4f3
961 changeset: 0:67e992f2c4f3
962 user: test
962 user: test
963 date: Thu Jan 01 00:00:01 1970 +0000
963 date: Thu Jan 01 00:00:01 1970 +0000
964 summary: base
964 summary: base
965
965
966
966
967
967
968 log -P 2
968 log -P 2
969
969
970 $ hg log -P 2
970 $ hg log -P 2
971 changeset: 6:2404bbcab562
971 changeset: 6:2404bbcab562
972 tag: tip
972 tag: tip
973 user: test
973 user: test
974 date: Thu Jan 01 00:00:01 1970 +0000
974 date: Thu Jan 01 00:00:01 1970 +0000
975 summary: b1.1
975 summary: b1.1
976
976
977 changeset: 5:302e9dd6890d
977 changeset: 5:302e9dd6890d
978 parent: 3:e62f78d544b4
978 parent: 3:e62f78d544b4
979 parent: 4:ddb82e70d1a1
979 parent: 4:ddb82e70d1a1
980 user: test
980 user: test
981 date: Thu Jan 01 00:00:01 1970 +0000
981 date: Thu Jan 01 00:00:01 1970 +0000
982 summary: m12
982 summary: m12
983
983
984 changeset: 4:ddb82e70d1a1
984 changeset: 4:ddb82e70d1a1
985 parent: 0:67e992f2c4f3
985 parent: 0:67e992f2c4f3
986 user: test
986 user: test
987 date: Thu Jan 01 00:00:01 1970 +0000
987 date: Thu Jan 01 00:00:01 1970 +0000
988 summary: b2
988 summary: b2
989
989
990 changeset: 3:e62f78d544b4
990 changeset: 3:e62f78d544b4
991 parent: 1:3d5bf5654eda
991 parent: 1:3d5bf5654eda
992 user: test
992 user: test
993 date: Thu Jan 01 00:00:01 1970 +0000
993 date: Thu Jan 01 00:00:01 1970 +0000
994 summary: b1
994 summary: b1
995
995
996
996
997
997
998 log -r tip -p --git
998 log -r tip -p --git
999
999
1000 $ hg log -r tip -p --git
1000 $ hg log -r tip -p --git
1001 changeset: 6:2404bbcab562
1001 changeset: 6:2404bbcab562
1002 tag: tip
1002 tag: tip
1003 user: test
1003 user: test
1004 date: Thu Jan 01 00:00:01 1970 +0000
1004 date: Thu Jan 01 00:00:01 1970 +0000
1005 summary: b1.1
1005 summary: b1.1
1006
1006
1007 diff --git a/b1 b/b1
1007 diff --git a/b1 b/b1
1008 --- a/b1
1008 --- a/b1
1009 +++ b/b1
1009 +++ b/b1
1010 @@ -1,1 +1,2 @@
1010 @@ -1,1 +1,2 @@
1011 b1
1011 b1
1012 +postm
1012 +postm
1013
1013
1014
1014
1015
1015
1016 log -r ""
1016 log -r ""
1017
1017
1018 $ hg log -r ''
1018 $ hg log -r ''
1019 hg: parse error: empty query
1019 hg: parse error: empty query
1020 [255]
1020 [255]
1021
1021
1022 log -r <some unknown node id>
1022 log -r <some unknown node id>
1023
1023
1024 $ hg log -r 1000000000000000000000000000000000000000
1024 $ hg log -r 1000000000000000000000000000000000000000
1025 abort: unknown revision '1000000000000000000000000000000000000000'!
1025 abort: unknown revision '1000000000000000000000000000000000000000'!
1026 [255]
1026 [255]
1027
1027
1028 log -k r1
1028 log -k r1
1029
1029
1030 $ hg log -k r1
1030 $ hg log -k r1
1031 changeset: 1:3d5bf5654eda
1031 changeset: 1:3d5bf5654eda
1032 user: test
1032 user: test
1033 date: Thu Jan 01 00:00:01 1970 +0000
1033 date: Thu Jan 01 00:00:01 1970 +0000
1034 summary: r1
1034 summary: r1
1035
1035
1036 log -p -l2 --color=always
1036 log -p -l2 --color=always
1037
1037
1038 $ hg --config extensions.color= --config color.mode=ansi \
1038 $ hg --config extensions.color= --config color.mode=ansi \
1039 > log -p -l2 --color=always
1039 > log -p -l2 --color=always
1040 \x1b[0;33mchangeset: 6:2404bbcab562\x1b[0m (esc)
1040 \x1b[0;33mchangeset: 6:2404bbcab562\x1b[0m (esc)
1041 tag: tip
1041 tag: tip
1042 user: test
1042 user: test
1043 date: Thu Jan 01 00:00:01 1970 +0000
1043 date: Thu Jan 01 00:00:01 1970 +0000
1044 summary: b1.1
1044 summary: b1.1
1045
1045
1046 \x1b[0;1mdiff -r 302e9dd6890d -r 2404bbcab562 b1\x1b[0m (esc)
1046 \x1b[0;1mdiff -r 302e9dd6890d -r 2404bbcab562 b1\x1b[0m (esc)
1047 \x1b[0;31;1m--- a/b1 Thu Jan 01 00:00:01 1970 +0000\x1b[0m (esc)
1047 \x1b[0;31;1m--- a/b1 Thu Jan 01 00:00:01 1970 +0000\x1b[0m (esc)
1048 \x1b[0;32;1m+++ b/b1 Thu Jan 01 00:00:01 1970 +0000\x1b[0m (esc)
1048 \x1b[0;32;1m+++ b/b1 Thu Jan 01 00:00:01 1970 +0000\x1b[0m (esc)
1049 \x1b[0;35m@@ -1,1 +1,2 @@\x1b[0m (esc)
1049 \x1b[0;35m@@ -1,1 +1,2 @@\x1b[0m (esc)
1050 b1
1050 b1
1051 \x1b[0;32m+postm\x1b[0m (esc)
1051 \x1b[0;32m+postm\x1b[0m (esc)
1052
1052
1053 \x1b[0;33mchangeset: 5:302e9dd6890d\x1b[0m (esc)
1053 \x1b[0;33mchangeset: 5:302e9dd6890d\x1b[0m (esc)
1054 parent: 3:e62f78d544b4
1054 parent: 3:e62f78d544b4
1055 parent: 4:ddb82e70d1a1
1055 parent: 4:ddb82e70d1a1
1056 user: test
1056 user: test
1057 date: Thu Jan 01 00:00:01 1970 +0000
1057 date: Thu Jan 01 00:00:01 1970 +0000
1058 summary: m12
1058 summary: m12
1059
1059
1060 \x1b[0;1mdiff -r e62f78d544b4 -r 302e9dd6890d b2\x1b[0m (esc)
1060 \x1b[0;1mdiff -r e62f78d544b4 -r 302e9dd6890d b2\x1b[0m (esc)
1061 \x1b[0;31;1m--- /dev/null Thu Jan 01 00:00:00 1970 +0000\x1b[0m (esc)
1061 \x1b[0;31;1m--- /dev/null Thu Jan 01 00:00:00 1970 +0000\x1b[0m (esc)
1062 \x1b[0;32;1m+++ b/b2 Thu Jan 01 00:00:01 1970 +0000\x1b[0m (esc)
1062 \x1b[0;32;1m+++ b/b2 Thu Jan 01 00:00:01 1970 +0000\x1b[0m (esc)
1063 \x1b[0;35m@@ -0,0 +1,1 @@\x1b[0m (esc)
1063 \x1b[0;35m@@ -0,0 +1,1 @@\x1b[0m (esc)
1064 \x1b[0;32m+b2\x1b[0m (esc)
1064 \x1b[0;32m+b2\x1b[0m (esc)
1065
1065
1066
1066
1067
1067
1068 log -r tip --stat
1068 log -r tip --stat
1069
1069
1070 $ hg log -r tip --stat
1070 $ hg log -r tip --stat
1071 changeset: 6:2404bbcab562
1071 changeset: 6:2404bbcab562
1072 tag: tip
1072 tag: tip
1073 user: test
1073 user: test
1074 date: Thu Jan 01 00:00:01 1970 +0000
1074 date: Thu Jan 01 00:00:01 1970 +0000
1075 summary: b1.1
1075 summary: b1.1
1076
1076
1077 b1 | 1 +
1077 b1 | 1 +
1078 1 files changed, 1 insertions(+), 0 deletions(-)
1078 1 files changed, 1 insertions(+), 0 deletions(-)
1079
1079
1080
1080
1081 $ cd ..
1081 $ cd ..
1082
1082
1083 log --follow --patch FILE in repository where linkrev isn't trustworthy
1083 log --follow --patch FILE in repository where linkrev isn't trustworthy
1084 (issue5376)
1084 (issue5376, issue6124)
1085
1085
1086 $ hg init follow-dup
1086 $ hg init follow-dup
1087 $ cd follow-dup
1087 $ cd follow-dup
1088 $ cat <<EOF >> .hg/hgrc
1088 $ cat <<EOF >> .hg/hgrc
1089 > [ui]
1089 > [ui]
1090 > logtemplate = '=== {rev}: {desc}\n'
1090 > logtemplate = '=== {rev}: {desc}\n'
1091 > [diff]
1091 > [diff]
1092 > nodates = True
1092 > nodates = True
1093 > EOF
1093 > EOF
1094 $ echo 0 >> a
1094 $ echo 0 >> a
1095 $ hg ci -qAm 'a0'
1095 $ hg ci -qAm 'a0'
1096 $ echo 1 >> a
1096 $ echo 1 >> a
1097 $ hg ci -m 'a1'
1097 $ hg ci -m 'a1'
1098 $ hg up -q 0
1098 $ hg up -q 0
1099 $ echo 1 >> a
1099 $ echo 1 >> a
1100 $ touch b
1100 $ touch b
1101 $ hg ci -qAm 'a1 with b'
1101 $ hg ci -qAm 'a1 with b'
1102 $ echo 3 >> a
1102 $ echo 3 >> a
1103 $ hg ci -m 'a3'
1103 $ hg ci -m 'a3'
1104
1104
1105 fctx.rev() == 2, but fctx.linkrev() == 1
1105 fctx.rev() == 2, but fctx.linkrev() == 1
1106
1106
1107 $ hg log -pf a
1107 $ hg log -pf a
1108 === 3: a3
1108 === 3: a3
1109 diff -r 4ea02ba94d66 -r e7a6331a34f0 a
1109 diff -r 4ea02ba94d66 -r e7a6331a34f0 a
1110 --- a/a
1110 --- a/a
1111 +++ b/a
1111 +++ b/a
1112 @@ -1,2 +1,3 @@
1112 @@ -1,2 +1,3 @@
1113 0
1113 0
1114 1
1114 1
1115 +3
1115 +3
1116
1116
1117 === 2: a1 with b
1117 === 2: a1 with b
1118 diff -r 49b5e81287e2 -r 4ea02ba94d66 a
1118 diff -r 49b5e81287e2 -r 4ea02ba94d66 a
1119 --- a/a
1119 --- a/a
1120 +++ b/a
1120 +++ b/a
1121 @@ -1,1 +1,2 @@
1121 @@ -1,1 +1,2 @@
1122 0
1122 0
1123 +1
1123 +1
1124
1124
1125 === 0: a0
1125 === 0: a0
1126 diff -r 000000000000 -r 49b5e81287e2 a
1126 diff -r 000000000000 -r 49b5e81287e2 a
1127 --- /dev/null
1127 --- /dev/null
1128 +++ b/a
1128 +++ b/a
1129 @@ -0,0 +1,1 @@
1129 @@ -0,0 +1,1 @@
1130 +0
1130 +0
1131
1131
1132 $ hg log -pr . a
1133 === 3: a3
1134 diff -r 4ea02ba94d66 -r e7a6331a34f0 a
1135 --- a/a
1136 +++ b/a
1137 @@ -1,2 +1,3 @@
1138 0
1139 1
1140 +3
1141
1132
1142
1133 fctx.introrev() == 2, but fctx.linkrev() == 1
1143 fctx.introrev() == 2, but fctx.linkrev() == 1
1134
1144
1135 $ hg up -q 2
1145 $ hg up -q 2
1136 $ hg log -pf a
1146 $ hg log -pf a
1137 === 2: a1 with b
1147 === 2: a1 with b
1138 diff -r 49b5e81287e2 -r 4ea02ba94d66 a
1148 diff -r 49b5e81287e2 -r 4ea02ba94d66 a
1139 --- a/a
1149 --- a/a
1140 +++ b/a
1150 +++ b/a
1141 @@ -1,1 +1,2 @@
1151 @@ -1,1 +1,2 @@
1142 0
1152 0
1143 +1
1153 +1
1144
1154
1145 === 0: a0
1155 === 0: a0
1146 diff -r 000000000000 -r 49b5e81287e2 a
1156 diff -r 000000000000 -r 49b5e81287e2 a
1147 --- /dev/null
1157 --- /dev/null
1148 +++ b/a
1158 +++ b/a
1149 @@ -0,0 +1,1 @@
1159 @@ -0,0 +1,1 @@
1150 +0
1160 +0
1151
1161
1152
1162
1163 BROKEN: should show the same diff as for rev 2 above
1164 $ hg log -pr . a
1165
1153 $ cd ..
1166 $ cd ..
1154
1167
1155 Multiple copy sources of a file:
1168 Multiple copy sources of a file:
1156
1169
1157 $ hg init follow-multi
1170 $ hg init follow-multi
1158 $ cd follow-multi
1171 $ cd follow-multi
1159 $ echo 0 >> a
1172 $ echo 0 >> a
1160 $ hg ci -qAm 'a'
1173 $ hg ci -qAm 'a'
1161 $ hg cp a b
1174 $ hg cp a b
1162 $ hg ci -m 'a->b'
1175 $ hg ci -m 'a->b'
1163 $ echo 2 >> a
1176 $ echo 2 >> a
1164 $ hg ci -m 'a'
1177 $ hg ci -m 'a'
1165 $ echo 3 >> b
1178 $ echo 3 >> b
1166 $ hg ci -m 'b'
1179 $ hg ci -m 'b'
1167 $ echo 4 >> a
1180 $ echo 4 >> a
1168 $ echo 4 >> b
1181 $ echo 4 >> b
1169 $ hg ci -m 'a,b'
1182 $ hg ci -m 'a,b'
1170 $ echo 5 >> a
1183 $ echo 5 >> a
1171 $ hg ci -m 'a0'
1184 $ hg ci -m 'a0'
1172 $ echo 6 >> b
1185 $ echo 6 >> b
1173 $ hg ci -m 'b0'
1186 $ hg ci -m 'b0'
1174 $ hg up -q 4
1187 $ hg up -q 4
1175 $ echo 7 >> b
1188 $ echo 7 >> b
1176 $ hg ci -m 'b1'
1189 $ hg ci -m 'b1'
1177 created new head
1190 created new head
1178 $ echo 8 >> a
1191 $ echo 8 >> a
1179 $ hg ci -m 'a1'
1192 $ hg ci -m 'a1'
1180 $ hg rm a
1193 $ hg rm a
1181 $ hg mv b a
1194 $ hg mv b a
1182 $ hg ci -m 'b1->a1'
1195 $ hg ci -m 'b1->a1'
1183 $ hg merge -qt :local
1196 $ hg merge -qt :local
1184 $ hg ci -m '(a0,b1->a1)->a'
1197 $ hg ci -m '(a0,b1->a1)->a'
1185
1198
1186 $ hg log -GT '{rev}: {desc}\n'
1199 $ hg log -GT '{rev}: {desc}\n'
1187 @ 10: (a0,b1->a1)->a
1200 @ 10: (a0,b1->a1)->a
1188 |\
1201 |\
1189 | o 9: b1->a1
1202 | o 9: b1->a1
1190 | |
1203 | |
1191 | o 8: a1
1204 | o 8: a1
1192 | |
1205 | |
1193 | o 7: b1
1206 | o 7: b1
1194 | |
1207 | |
1195 o | 6: b0
1208 o | 6: b0
1196 | |
1209 | |
1197 o | 5: a0
1210 o | 5: a0
1198 |/
1211 |/
1199 o 4: a,b
1212 o 4: a,b
1200 |
1213 |
1201 o 3: b
1214 o 3: b
1202 |
1215 |
1203 o 2: a
1216 o 2: a
1204 |
1217 |
1205 o 1: a->b
1218 o 1: a->b
1206 |
1219 |
1207 o 0: a
1220 o 0: a
1208
1221
1209
1222
1210 since file 'a' has multiple copy sources at the revision 4, ancestors can't
1223 since file 'a' has multiple copy sources at the revision 4, ancestors can't
1211 be indexed solely by fctx.linkrev().
1224 be indexed solely by fctx.linkrev().
1212
1225
1213 $ hg log -T '{rev}: {desc}\n' -f a
1226 $ hg log -T '{rev}: {desc}\n' -f a
1214 10: (a0,b1->a1)->a
1227 10: (a0,b1->a1)->a
1215 9: b1->a1
1228 9: b1->a1
1216 7: b1
1229 7: b1
1217 5: a0
1230 5: a0
1218 4: a,b
1231 4: a,b
1219 3: b
1232 3: b
1220 2: a
1233 2: a
1221 1: a->b
1234 1: a->b
1222 0: a
1235 0: a
1223
1236
1224 $ cd ..
1237 $ cd ..
1225
1238
1226 Test that log should respect the order of -rREV even if multiple OR conditions
1239 Test that log should respect the order of -rREV even if multiple OR conditions
1227 are specified (issue5100):
1240 are specified (issue5100):
1228
1241
1229 $ hg init revorder
1242 $ hg init revorder
1230 $ cd revorder
1243 $ cd revorder
1231
1244
1232 $ hg branch -q b0
1245 $ hg branch -q b0
1233 $ echo 0 >> f0
1246 $ echo 0 >> f0
1234 $ hg ci -qAm k0 -u u0
1247 $ hg ci -qAm k0 -u u0
1235 $ hg branch -q b1
1248 $ hg branch -q b1
1236 $ echo 1 >> f1
1249 $ echo 1 >> f1
1237 $ hg ci -qAm k1 -u u1
1250 $ hg ci -qAm k1 -u u1
1238 $ hg branch -q b2
1251 $ hg branch -q b2
1239 $ echo 2 >> f2
1252 $ echo 2 >> f2
1240 $ hg ci -qAm k2 -u u2
1253 $ hg ci -qAm k2 -u u2
1241
1254
1242 $ hg update -q b2
1255 $ hg update -q b2
1243 $ echo 3 >> f2
1256 $ echo 3 >> f2
1244 $ hg ci -qAm k2 -u u2
1257 $ hg ci -qAm k2 -u u2
1245 $ hg update -q b1
1258 $ hg update -q b1
1246 $ echo 4 >> f1
1259 $ echo 4 >> f1
1247 $ hg ci -qAm k1 -u u1
1260 $ hg ci -qAm k1 -u u1
1248 $ hg update -q b0
1261 $ hg update -q b0
1249 $ echo 5 >> f0
1262 $ echo 5 >> f0
1250 $ hg ci -qAm k0 -u u0
1263 $ hg ci -qAm k0 -u u0
1251
1264
1252 summary of revisions:
1265 summary of revisions:
1253
1266
1254 $ hg log -G -T '{rev} {branch} {author} {desc} {files}\n'
1267 $ hg log -G -T '{rev} {branch} {author} {desc} {files}\n'
1255 @ 5 b0 u0 k0 f0
1268 @ 5 b0 u0 k0 f0
1256 |
1269 |
1257 | o 4 b1 u1 k1 f1
1270 | o 4 b1 u1 k1 f1
1258 | |
1271 | |
1259 | | o 3 b2 u2 k2 f2
1272 | | o 3 b2 u2 k2 f2
1260 | | |
1273 | | |
1261 | | o 2 b2 u2 k2 f2
1274 | | o 2 b2 u2 k2 f2
1262 | |/
1275 | |/
1263 | o 1 b1 u1 k1 f1
1276 | o 1 b1 u1 k1 f1
1264 |/
1277 |/
1265 o 0 b0 u0 k0 f0
1278 o 0 b0 u0 k0 f0
1266
1279
1267
1280
1268 log -b BRANCH in ascending order:
1281 log -b BRANCH in ascending order:
1269
1282
1270 $ hg log -r0:tip -T '{rev} {branch}\n' -b b0 -b b1
1283 $ hg log -r0:tip -T '{rev} {branch}\n' -b b0 -b b1
1271 0 b0
1284 0 b0
1272 1 b1
1285 1 b1
1273 4 b1
1286 4 b1
1274 5 b0
1287 5 b0
1275 $ hg log -r0:tip -T '{rev} {branch}\n' -b b1 -b b0
1288 $ hg log -r0:tip -T '{rev} {branch}\n' -b b1 -b b0
1276 0 b0
1289 0 b0
1277 1 b1
1290 1 b1
1278 4 b1
1291 4 b1
1279 5 b0
1292 5 b0
1280
1293
1281 log --only-branch BRANCH in descending order:
1294 log --only-branch BRANCH in descending order:
1282
1295
1283 $ hg log -rtip:0 -T '{rev} {branch}\n' --only-branch b1 --only-branch b2
1296 $ hg log -rtip:0 -T '{rev} {branch}\n' --only-branch b1 --only-branch b2
1284 4 b1
1297 4 b1
1285 3 b2
1298 3 b2
1286 2 b2
1299 2 b2
1287 1 b1
1300 1 b1
1288 $ hg log -rtip:0 -T '{rev} {branch}\n' --only-branch b2 --only-branch b1
1301 $ hg log -rtip:0 -T '{rev} {branch}\n' --only-branch b2 --only-branch b1
1289 4 b1
1302 4 b1
1290 3 b2
1303 3 b2
1291 2 b2
1304 2 b2
1292 1 b1
1305 1 b1
1293
1306
1294 log -u USER in ascending order, against compound set:
1307 log -u USER in ascending order, against compound set:
1295
1308
1296 $ hg log -r'::head()' -T '{rev} {author}\n' -u u0 -u u2
1309 $ hg log -r'::head()' -T '{rev} {author}\n' -u u0 -u u2
1297 0 u0
1310 0 u0
1298 2 u2
1311 2 u2
1299 3 u2
1312 3 u2
1300 5 u0
1313 5 u0
1301 $ hg log -r'::head()' -T '{rev} {author}\n' -u u2 -u u0
1314 $ hg log -r'::head()' -T '{rev} {author}\n' -u u2 -u u0
1302 0 u0
1315 0 u0
1303 2 u2
1316 2 u2
1304 3 u2
1317 3 u2
1305 5 u0
1318 5 u0
1306
1319
1307 log -k TEXT in descending order, against compound set:
1320 log -k TEXT in descending order, against compound set:
1308
1321
1309 $ hg log -r'5 + reverse(::3)' -T '{rev} {desc}\n' -k k0 -k k1 -k k2
1322 $ hg log -r'5 + reverse(::3)' -T '{rev} {desc}\n' -k k0 -k k1 -k k2
1310 5 k0
1323 5 k0
1311 3 k2
1324 3 k2
1312 2 k2
1325 2 k2
1313 1 k1
1326 1 k1
1314 0 k0
1327 0 k0
1315 $ hg log -r'5 + reverse(::3)' -T '{rev} {desc}\n' -k k2 -k k1 -k k0
1328 $ hg log -r'5 + reverse(::3)' -T '{rev} {desc}\n' -k k2 -k k1 -k k0
1316 5 k0
1329 5 k0
1317 3 k2
1330 3 k2
1318 2 k2
1331 2 k2
1319 1 k1
1332 1 k1
1320 0 k0
1333 0 k0
1321
1334
1322 log FILE in ascending order, against dagrange:
1335 log FILE in ascending order, against dagrange:
1323
1336
1324 $ hg log -r1:: -T '{rev} {files}\n' f1 f2
1337 $ hg log -r1:: -T '{rev} {files}\n' f1 f2
1325 1 f1
1338 1 f1
1326 2 f2
1339 2 f2
1327 3 f2
1340 3 f2
1328 4 f1
1341 4 f1
1329 $ hg log -r1:: -T '{rev} {files}\n' f2 f1
1342 $ hg log -r1:: -T '{rev} {files}\n' f2 f1
1330 1 f1
1343 1 f1
1331 2 f2
1344 2 f2
1332 3 f2
1345 3 f2
1333 4 f1
1346 4 f1
1334
1347
1335 $ cd ..
1348 $ cd ..
1336
1349
1337 User
1350 User
1338
1351
1339 $ hg init usertest
1352 $ hg init usertest
1340 $ cd usertest
1353 $ cd usertest
1341
1354
1342 $ echo a > a
1355 $ echo a > a
1343 $ hg ci -A -m "a" -u "User One <user1@example.org>"
1356 $ hg ci -A -m "a" -u "User One <user1@example.org>"
1344 adding a
1357 adding a
1345 $ echo b > b
1358 $ echo b > b
1346 $ hg ci -A -m "b" -u "User Two <user2@example.org>"
1359 $ hg ci -A -m "b" -u "User Two <user2@example.org>"
1347 adding b
1360 adding b
1348
1361
1349 $ hg log -u "User One <user1@example.org>"
1362 $ hg log -u "User One <user1@example.org>"
1350 changeset: 0:29a4c94f1924
1363 changeset: 0:29a4c94f1924
1351 user: User One <user1@example.org>
1364 user: User One <user1@example.org>
1352 date: Thu Jan 01 00:00:00 1970 +0000
1365 date: Thu Jan 01 00:00:00 1970 +0000
1353 summary: a
1366 summary: a
1354
1367
1355 $ hg log -u "user1" -u "user2"
1368 $ hg log -u "user1" -u "user2"
1356 changeset: 1:e834b5e69c0e
1369 changeset: 1:e834b5e69c0e
1357 tag: tip
1370 tag: tip
1358 user: User Two <user2@example.org>
1371 user: User Two <user2@example.org>
1359 date: Thu Jan 01 00:00:00 1970 +0000
1372 date: Thu Jan 01 00:00:00 1970 +0000
1360 summary: b
1373 summary: b
1361
1374
1362 changeset: 0:29a4c94f1924
1375 changeset: 0:29a4c94f1924
1363 user: User One <user1@example.org>
1376 user: User One <user1@example.org>
1364 date: Thu Jan 01 00:00:00 1970 +0000
1377 date: Thu Jan 01 00:00:00 1970 +0000
1365 summary: a
1378 summary: a
1366
1379
1367 $ hg log -u "user3"
1380 $ hg log -u "user3"
1368
1381
1369 "-u USER" shouldn't be overridden by "user(USER)" alias
1382 "-u USER" shouldn't be overridden by "user(USER)" alias
1370
1383
1371 $ hg log --config 'revsetalias.user(x)=branch(x)' -u default
1384 $ hg log --config 'revsetalias.user(x)=branch(x)' -u default
1372 $ hg log --config 'revsetalias.user(x)=branch(x)' -u user1
1385 $ hg log --config 'revsetalias.user(x)=branch(x)' -u user1
1373 changeset: 0:29a4c94f1924
1386 changeset: 0:29a4c94f1924
1374 user: User One <user1@example.org>
1387 user: User One <user1@example.org>
1375 date: Thu Jan 01 00:00:00 1970 +0000
1388 date: Thu Jan 01 00:00:00 1970 +0000
1376 summary: a
1389 summary: a
1377
1390
1378
1391
1379 $ cd ..
1392 $ cd ..
1380
1393
1381 $ hg init branches
1394 $ hg init branches
1382 $ cd branches
1395 $ cd branches
1383
1396
1384 $ echo a > a
1397 $ echo a > a
1385 $ hg ci -A -m "commit on default"
1398 $ hg ci -A -m "commit on default"
1386 adding a
1399 adding a
1387 $ hg branch test
1400 $ hg branch test
1388 marked working directory as branch test
1401 marked working directory as branch test
1389 (branches are permanent and global, did you want a bookmark?)
1402 (branches are permanent and global, did you want a bookmark?)
1390 $ echo b > b
1403 $ echo b > b
1391 $ hg ci -A -m "commit on test"
1404 $ hg ci -A -m "commit on test"
1392 adding b
1405 adding b
1393
1406
1394 $ hg up default
1407 $ hg up default
1395 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
1408 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
1396 $ echo c > c
1409 $ echo c > c
1397 $ hg ci -A -m "commit on default"
1410 $ hg ci -A -m "commit on default"
1398 adding c
1411 adding c
1399 $ hg up test
1412 $ hg up test
1400 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
1413 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
1401 $ echo c > c
1414 $ echo c > c
1402 $ hg ci -A -m "commit on test"
1415 $ hg ci -A -m "commit on test"
1403 adding c
1416 adding c
1404
1417
1405
1418
1406 log -b default
1419 log -b default
1407
1420
1408 $ hg log -b default
1421 $ hg log -b default
1409 changeset: 2:c3a4f03cc9a7
1422 changeset: 2:c3a4f03cc9a7
1410 parent: 0:24427303d56f
1423 parent: 0:24427303d56f
1411 user: test
1424 user: test
1412 date: Thu Jan 01 00:00:00 1970 +0000
1425 date: Thu Jan 01 00:00:00 1970 +0000
1413 summary: commit on default
1426 summary: commit on default
1414
1427
1415 changeset: 0:24427303d56f
1428 changeset: 0:24427303d56f
1416 user: test
1429 user: test
1417 date: Thu Jan 01 00:00:00 1970 +0000
1430 date: Thu Jan 01 00:00:00 1970 +0000
1418 summary: commit on default
1431 summary: commit on default
1419
1432
1420
1433
1421
1434
1422 log -b test
1435 log -b test
1423
1436
1424 $ hg log -b test
1437 $ hg log -b test
1425 changeset: 3:f5d8de11c2e2
1438 changeset: 3:f5d8de11c2e2
1426 branch: test
1439 branch: test
1427 tag: tip
1440 tag: tip
1428 parent: 1:d32277701ccb
1441 parent: 1:d32277701ccb
1429 user: test
1442 user: test
1430 date: Thu Jan 01 00:00:00 1970 +0000
1443 date: Thu Jan 01 00:00:00 1970 +0000
1431 summary: commit on test
1444 summary: commit on test
1432
1445
1433 changeset: 1:d32277701ccb
1446 changeset: 1:d32277701ccb
1434 branch: test
1447 branch: test
1435 user: test
1448 user: test
1436 date: Thu Jan 01 00:00:00 1970 +0000
1449 date: Thu Jan 01 00:00:00 1970 +0000
1437 summary: commit on test
1450 summary: commit on test
1438
1451
1439
1452
1440
1453
1441 log -b dummy
1454 log -b dummy
1442
1455
1443 $ hg log -b dummy
1456 $ hg log -b dummy
1444 abort: unknown revision 'dummy'!
1457 abort: unknown revision 'dummy'!
1445 [255]
1458 [255]
1446
1459
1447
1460
1448 log -b .
1461 log -b .
1449
1462
1450 $ hg log -b .
1463 $ hg log -b .
1451 changeset: 3:f5d8de11c2e2
1464 changeset: 3:f5d8de11c2e2
1452 branch: test
1465 branch: test
1453 tag: tip
1466 tag: tip
1454 parent: 1:d32277701ccb
1467 parent: 1:d32277701ccb
1455 user: test
1468 user: test
1456 date: Thu Jan 01 00:00:00 1970 +0000
1469 date: Thu Jan 01 00:00:00 1970 +0000
1457 summary: commit on test
1470 summary: commit on test
1458
1471
1459 changeset: 1:d32277701ccb
1472 changeset: 1:d32277701ccb
1460 branch: test
1473 branch: test
1461 user: test
1474 user: test
1462 date: Thu Jan 01 00:00:00 1970 +0000
1475 date: Thu Jan 01 00:00:00 1970 +0000
1463 summary: commit on test
1476 summary: commit on test
1464
1477
1465
1478
1466
1479
1467 log -b default -b test
1480 log -b default -b test
1468
1481
1469 $ hg log -b default -b test
1482 $ hg log -b default -b test
1470 changeset: 3:f5d8de11c2e2
1483 changeset: 3:f5d8de11c2e2
1471 branch: test
1484 branch: test
1472 tag: tip
1485 tag: tip
1473 parent: 1:d32277701ccb
1486 parent: 1:d32277701ccb
1474 user: test
1487 user: test
1475 date: Thu Jan 01 00:00:00 1970 +0000
1488 date: Thu Jan 01 00:00:00 1970 +0000
1476 summary: commit on test
1489 summary: commit on test
1477
1490
1478 changeset: 2:c3a4f03cc9a7
1491 changeset: 2:c3a4f03cc9a7
1479 parent: 0:24427303d56f
1492 parent: 0:24427303d56f
1480 user: test
1493 user: test
1481 date: Thu Jan 01 00:00:00 1970 +0000
1494 date: Thu Jan 01 00:00:00 1970 +0000
1482 summary: commit on default
1495 summary: commit on default
1483
1496
1484 changeset: 1:d32277701ccb
1497 changeset: 1:d32277701ccb
1485 branch: test
1498 branch: test
1486 user: test
1499 user: test
1487 date: Thu Jan 01 00:00:00 1970 +0000
1500 date: Thu Jan 01 00:00:00 1970 +0000
1488 summary: commit on test
1501 summary: commit on test
1489
1502
1490 changeset: 0:24427303d56f
1503 changeset: 0:24427303d56f
1491 user: test
1504 user: test
1492 date: Thu Jan 01 00:00:00 1970 +0000
1505 date: Thu Jan 01 00:00:00 1970 +0000
1493 summary: commit on default
1506 summary: commit on default
1494
1507
1495
1508
1496
1509
1497 log -b default -b .
1510 log -b default -b .
1498
1511
1499 $ hg log -b default -b .
1512 $ hg log -b default -b .
1500 changeset: 3:f5d8de11c2e2
1513 changeset: 3:f5d8de11c2e2
1501 branch: test
1514 branch: test
1502 tag: tip
1515 tag: tip
1503 parent: 1:d32277701ccb
1516 parent: 1:d32277701ccb
1504 user: test
1517 user: test
1505 date: Thu Jan 01 00:00:00 1970 +0000
1518 date: Thu Jan 01 00:00:00 1970 +0000
1506 summary: commit on test
1519 summary: commit on test
1507
1520
1508 changeset: 2:c3a4f03cc9a7
1521 changeset: 2:c3a4f03cc9a7
1509 parent: 0:24427303d56f
1522 parent: 0:24427303d56f
1510 user: test
1523 user: test
1511 date: Thu Jan 01 00:00:00 1970 +0000
1524 date: Thu Jan 01 00:00:00 1970 +0000
1512 summary: commit on default
1525 summary: commit on default
1513
1526
1514 changeset: 1:d32277701ccb
1527 changeset: 1:d32277701ccb
1515 branch: test
1528 branch: test
1516 user: test
1529 user: test
1517 date: Thu Jan 01 00:00:00 1970 +0000
1530 date: Thu Jan 01 00:00:00 1970 +0000
1518 summary: commit on test
1531 summary: commit on test
1519
1532
1520 changeset: 0:24427303d56f
1533 changeset: 0:24427303d56f
1521 user: test
1534 user: test
1522 date: Thu Jan 01 00:00:00 1970 +0000
1535 date: Thu Jan 01 00:00:00 1970 +0000
1523 summary: commit on default
1536 summary: commit on default
1524
1537
1525
1538
1526
1539
1527 log -b . -b test
1540 log -b . -b test
1528
1541
1529 $ hg log -b . -b test
1542 $ hg log -b . -b test
1530 changeset: 3:f5d8de11c2e2
1543 changeset: 3:f5d8de11c2e2
1531 branch: test
1544 branch: test
1532 tag: tip
1545 tag: tip
1533 parent: 1:d32277701ccb
1546 parent: 1:d32277701ccb
1534 user: test
1547 user: test
1535 date: Thu Jan 01 00:00:00 1970 +0000
1548 date: Thu Jan 01 00:00:00 1970 +0000
1536 summary: commit on test
1549 summary: commit on test
1537
1550
1538 changeset: 1:d32277701ccb
1551 changeset: 1:d32277701ccb
1539 branch: test
1552 branch: test
1540 user: test
1553 user: test
1541 date: Thu Jan 01 00:00:00 1970 +0000
1554 date: Thu Jan 01 00:00:00 1970 +0000
1542 summary: commit on test
1555 summary: commit on test
1543
1556
1544
1557
1545
1558
1546 log -b 2
1559 log -b 2
1547
1560
1548 $ hg log -b 2
1561 $ hg log -b 2
1549 changeset: 2:c3a4f03cc9a7
1562 changeset: 2:c3a4f03cc9a7
1550 parent: 0:24427303d56f
1563 parent: 0:24427303d56f
1551 user: test
1564 user: test
1552 date: Thu Jan 01 00:00:00 1970 +0000
1565 date: Thu Jan 01 00:00:00 1970 +0000
1553 summary: commit on default
1566 summary: commit on default
1554
1567
1555 changeset: 0:24427303d56f
1568 changeset: 0:24427303d56f
1556 user: test
1569 user: test
1557 date: Thu Jan 01 00:00:00 1970 +0000
1570 date: Thu Jan 01 00:00:00 1970 +0000
1558 summary: commit on default
1571 summary: commit on default
1559
1572
1560 #if gettext
1573 #if gettext
1561
1574
1562 Test that all log names are translated (e.g. branches, bookmarks, tags):
1575 Test that all log names are translated (e.g. branches, bookmarks, tags):
1563
1576
1564 $ hg bookmark babar -r tip
1577 $ hg bookmark babar -r tip
1565
1578
1566 $ HGENCODING=UTF-8 LANGUAGE=de hg log -r tip
1579 $ HGENCODING=UTF-8 LANGUAGE=de hg log -r tip
1567 \xc3\x84nderung: 3:f5d8de11c2e2 (esc)
1580 \xc3\x84nderung: 3:f5d8de11c2e2 (esc)
1568 Zweig: test
1581 Zweig: test
1569 Lesezeichen: babar
1582 Lesezeichen: babar
1570 Marke: tip
1583 Marke: tip
1571 Vorg\xc3\xa4nger: 1:d32277701ccb (esc)
1584 Vorg\xc3\xa4nger: 1:d32277701ccb (esc)
1572 Nutzer: test
1585 Nutzer: test
1573 Datum: Thu Jan 01 00:00:00 1970 +0000
1586 Datum: Thu Jan 01 00:00:00 1970 +0000
1574 Zusammenfassung: commit on test
1587 Zusammenfassung: commit on test
1575
1588
1576 $ hg bookmark -d babar
1589 $ hg bookmark -d babar
1577
1590
1578 #endif
1591 #endif
1579
1592
1580 log -p --cwd dir (in subdir)
1593 log -p --cwd dir (in subdir)
1581
1594
1582 $ mkdir dir
1595 $ mkdir dir
1583 $ hg log -p --cwd dir
1596 $ hg log -p --cwd dir
1584 changeset: 3:f5d8de11c2e2
1597 changeset: 3:f5d8de11c2e2
1585 branch: test
1598 branch: test
1586 tag: tip
1599 tag: tip
1587 parent: 1:d32277701ccb
1600 parent: 1:d32277701ccb
1588 user: test
1601 user: test
1589 date: Thu Jan 01 00:00:00 1970 +0000
1602 date: Thu Jan 01 00:00:00 1970 +0000
1590 summary: commit on test
1603 summary: commit on test
1591
1604
1592 diff -r d32277701ccb -r f5d8de11c2e2 c
1605 diff -r d32277701ccb -r f5d8de11c2e2 c
1593 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1606 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1594 +++ b/c Thu Jan 01 00:00:00 1970 +0000
1607 +++ b/c Thu Jan 01 00:00:00 1970 +0000
1595 @@ -0,0 +1,1 @@
1608 @@ -0,0 +1,1 @@
1596 +c
1609 +c
1597
1610
1598 changeset: 2:c3a4f03cc9a7
1611 changeset: 2:c3a4f03cc9a7
1599 parent: 0:24427303d56f
1612 parent: 0:24427303d56f
1600 user: test
1613 user: test
1601 date: Thu Jan 01 00:00:00 1970 +0000
1614 date: Thu Jan 01 00:00:00 1970 +0000
1602 summary: commit on default
1615 summary: commit on default
1603
1616
1604 diff -r 24427303d56f -r c3a4f03cc9a7 c
1617 diff -r 24427303d56f -r c3a4f03cc9a7 c
1605 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1618 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1606 +++ b/c Thu Jan 01 00:00:00 1970 +0000
1619 +++ b/c Thu Jan 01 00:00:00 1970 +0000
1607 @@ -0,0 +1,1 @@
1620 @@ -0,0 +1,1 @@
1608 +c
1621 +c
1609
1622
1610 changeset: 1:d32277701ccb
1623 changeset: 1:d32277701ccb
1611 branch: test
1624 branch: test
1612 user: test
1625 user: test
1613 date: Thu Jan 01 00:00:00 1970 +0000
1626 date: Thu Jan 01 00:00:00 1970 +0000
1614 summary: commit on test
1627 summary: commit on test
1615
1628
1616 diff -r 24427303d56f -r d32277701ccb b
1629 diff -r 24427303d56f -r d32277701ccb b
1617 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1630 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1618 +++ b/b Thu Jan 01 00:00:00 1970 +0000
1631 +++ b/b Thu Jan 01 00:00:00 1970 +0000
1619 @@ -0,0 +1,1 @@
1632 @@ -0,0 +1,1 @@
1620 +b
1633 +b
1621
1634
1622 changeset: 0:24427303d56f
1635 changeset: 0:24427303d56f
1623 user: test
1636 user: test
1624 date: Thu Jan 01 00:00:00 1970 +0000
1637 date: Thu Jan 01 00:00:00 1970 +0000
1625 summary: commit on default
1638 summary: commit on default
1626
1639
1627 diff -r 000000000000 -r 24427303d56f a
1640 diff -r 000000000000 -r 24427303d56f a
1628 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1641 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1629 +++ b/a Thu Jan 01 00:00:00 1970 +0000
1642 +++ b/a Thu Jan 01 00:00:00 1970 +0000
1630 @@ -0,0 +1,1 @@
1643 @@ -0,0 +1,1 @@
1631 +a
1644 +a
1632
1645
1633
1646
1634
1647
1635 log -p -R repo
1648 log -p -R repo
1636
1649
1637 $ cd dir
1650 $ cd dir
1638 $ hg log -p -R .. ../a
1651 $ hg log -p -R .. ../a
1639 changeset: 0:24427303d56f
1652 changeset: 0:24427303d56f
1640 user: test
1653 user: test
1641 date: Thu Jan 01 00:00:00 1970 +0000
1654 date: Thu Jan 01 00:00:00 1970 +0000
1642 summary: commit on default
1655 summary: commit on default
1643
1656
1644 diff -r 000000000000 -r 24427303d56f a
1657 diff -r 000000000000 -r 24427303d56f a
1645 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1658 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1646 +++ b/a Thu Jan 01 00:00:00 1970 +0000
1659 +++ b/a Thu Jan 01 00:00:00 1970 +0000
1647 @@ -0,0 +1,1 @@
1660 @@ -0,0 +1,1 @@
1648 +a
1661 +a
1649
1662
1650
1663
1651 $ cd ../..
1664 $ cd ../..
1652
1665
1653 $ hg init follow2
1666 $ hg init follow2
1654 $ cd follow2
1667 $ cd follow2
1655
1668
1656 # Build the following history:
1669 # Build the following history:
1657 # tip - o - x - o - x - x
1670 # tip - o - x - o - x - x
1658 # \ /
1671 # \ /
1659 # o - o - o - x
1672 # o - o - o - x
1660 # \ /
1673 # \ /
1661 # o
1674 # o
1662 #
1675 #
1663 # Where "o" is a revision containing "foo" and
1676 # Where "o" is a revision containing "foo" and
1664 # "x" is a revision without "foo"
1677 # "x" is a revision without "foo"
1665
1678
1666 $ touch init
1679 $ touch init
1667 $ hg ci -A -m "init, unrelated"
1680 $ hg ci -A -m "init, unrelated"
1668 adding init
1681 adding init
1669 $ echo 'foo' > init
1682 $ echo 'foo' > init
1670 $ hg ci -m "change, unrelated"
1683 $ hg ci -m "change, unrelated"
1671 $ echo 'foo' > foo
1684 $ echo 'foo' > foo
1672 $ hg ci -A -m "add unrelated old foo"
1685 $ hg ci -A -m "add unrelated old foo"
1673 adding foo
1686 adding foo
1674 $ hg rm foo
1687 $ hg rm foo
1675 $ hg ci -m "delete foo, unrelated"
1688 $ hg ci -m "delete foo, unrelated"
1676 $ echo 'related' > foo
1689 $ echo 'related' > foo
1677 $ hg ci -A -m "add foo, related"
1690 $ hg ci -A -m "add foo, related"
1678 adding foo
1691 adding foo
1679
1692
1680 $ hg up 0
1693 $ hg up 0
1681 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
1694 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
1682 $ touch branch
1695 $ touch branch
1683 $ hg ci -A -m "first branch, unrelated"
1696 $ hg ci -A -m "first branch, unrelated"
1684 adding branch
1697 adding branch
1685 created new head
1698 created new head
1686 $ touch foo
1699 $ touch foo
1687 $ hg ci -A -m "create foo, related"
1700 $ hg ci -A -m "create foo, related"
1688 adding foo
1701 adding foo
1689 $ echo 'change' > foo
1702 $ echo 'change' > foo
1690 $ hg ci -m "change foo, related"
1703 $ hg ci -m "change foo, related"
1691
1704
1692 $ hg up 6
1705 $ hg up 6
1693 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
1706 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
1694 $ echo 'change foo in branch' > foo
1707 $ echo 'change foo in branch' > foo
1695 $ hg ci -m "change foo in branch, related"
1708 $ hg ci -m "change foo in branch, related"
1696 created new head
1709 created new head
1697 $ hg merge 7
1710 $ hg merge 7
1698 merging foo
1711 merging foo
1699 warning: conflicts while merging foo! (edit, then use 'hg resolve --mark')
1712 warning: conflicts while merging foo! (edit, then use 'hg resolve --mark')
1700 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
1713 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
1701 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
1714 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
1702 [1]
1715 [1]
1703 $ echo 'merge 1' > foo
1716 $ echo 'merge 1' > foo
1704 $ hg resolve -m foo
1717 $ hg resolve -m foo
1705 (no more unresolved files)
1718 (no more unresolved files)
1706 $ hg ci -m "First merge, related"
1719 $ hg ci -m "First merge, related"
1707
1720
1708 $ hg merge 4
1721 $ hg merge 4
1709 merging foo
1722 merging foo
1710 warning: conflicts while merging foo! (edit, then use 'hg resolve --mark')
1723 warning: conflicts while merging foo! (edit, then use 'hg resolve --mark')
1711 1 files updated, 0 files merged, 0 files removed, 1 files unresolved
1724 1 files updated, 0 files merged, 0 files removed, 1 files unresolved
1712 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
1725 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
1713 [1]
1726 [1]
1714 $ echo 'merge 2' > foo
1727 $ echo 'merge 2' > foo
1715 $ hg resolve -m foo
1728 $ hg resolve -m foo
1716 (no more unresolved files)
1729 (no more unresolved files)
1717 $ hg ci -m "Last merge, related"
1730 $ hg ci -m "Last merge, related"
1718
1731
1719 $ hg log --graph
1732 $ hg log --graph
1720 @ changeset: 10:4dae8563d2c5
1733 @ changeset: 10:4dae8563d2c5
1721 |\ tag: tip
1734 |\ tag: tip
1722 | | parent: 9:7b35701b003e
1735 | | parent: 9:7b35701b003e
1723 | | parent: 4:88176d361b69
1736 | | parent: 4:88176d361b69
1724 | | user: test
1737 | | user: test
1725 | | date: Thu Jan 01 00:00:00 1970 +0000
1738 | | date: Thu Jan 01 00:00:00 1970 +0000
1726 | | summary: Last merge, related
1739 | | summary: Last merge, related
1727 | |
1740 | |
1728 | o changeset: 9:7b35701b003e
1741 | o changeset: 9:7b35701b003e
1729 | |\ parent: 8:e5416ad8a855
1742 | |\ parent: 8:e5416ad8a855
1730 | | | parent: 7:87fe3144dcfa
1743 | | | parent: 7:87fe3144dcfa
1731 | | | user: test
1744 | | | user: test
1732 | | | date: Thu Jan 01 00:00:00 1970 +0000
1745 | | | date: Thu Jan 01 00:00:00 1970 +0000
1733 | | | summary: First merge, related
1746 | | | summary: First merge, related
1734 | | |
1747 | | |
1735 | | o changeset: 8:e5416ad8a855
1748 | | o changeset: 8:e5416ad8a855
1736 | | | parent: 6:dc6c325fe5ee
1749 | | | parent: 6:dc6c325fe5ee
1737 | | | user: test
1750 | | | user: test
1738 | | | date: Thu Jan 01 00:00:00 1970 +0000
1751 | | | date: Thu Jan 01 00:00:00 1970 +0000
1739 | | | summary: change foo in branch, related
1752 | | | summary: change foo in branch, related
1740 | | |
1753 | | |
1741 | o | changeset: 7:87fe3144dcfa
1754 | o | changeset: 7:87fe3144dcfa
1742 | |/ user: test
1755 | |/ user: test
1743 | | date: Thu Jan 01 00:00:00 1970 +0000
1756 | | date: Thu Jan 01 00:00:00 1970 +0000
1744 | | summary: change foo, related
1757 | | summary: change foo, related
1745 | |
1758 | |
1746 | o changeset: 6:dc6c325fe5ee
1759 | o changeset: 6:dc6c325fe5ee
1747 | | user: test
1760 | | user: test
1748 | | date: Thu Jan 01 00:00:00 1970 +0000
1761 | | date: Thu Jan 01 00:00:00 1970 +0000
1749 | | summary: create foo, related
1762 | | summary: create foo, related
1750 | |
1763 | |
1751 | o changeset: 5:73db34516eb9
1764 | o changeset: 5:73db34516eb9
1752 | | parent: 0:e87515fd044a
1765 | | parent: 0:e87515fd044a
1753 | | user: test
1766 | | user: test
1754 | | date: Thu Jan 01 00:00:00 1970 +0000
1767 | | date: Thu Jan 01 00:00:00 1970 +0000
1755 | | summary: first branch, unrelated
1768 | | summary: first branch, unrelated
1756 | |
1769 | |
1757 o | changeset: 4:88176d361b69
1770 o | changeset: 4:88176d361b69
1758 | | user: test
1771 | | user: test
1759 | | date: Thu Jan 01 00:00:00 1970 +0000
1772 | | date: Thu Jan 01 00:00:00 1970 +0000
1760 | | summary: add foo, related
1773 | | summary: add foo, related
1761 | |
1774 | |
1762 o | changeset: 3:dd78ae4afb56
1775 o | changeset: 3:dd78ae4afb56
1763 | | user: test
1776 | | user: test
1764 | | date: Thu Jan 01 00:00:00 1970 +0000
1777 | | date: Thu Jan 01 00:00:00 1970 +0000
1765 | | summary: delete foo, unrelated
1778 | | summary: delete foo, unrelated
1766 | |
1779 | |
1767 o | changeset: 2:c4c64aedf0f7
1780 o | changeset: 2:c4c64aedf0f7
1768 | | user: test
1781 | | user: test
1769 | | date: Thu Jan 01 00:00:00 1970 +0000
1782 | | date: Thu Jan 01 00:00:00 1970 +0000
1770 | | summary: add unrelated old foo
1783 | | summary: add unrelated old foo
1771 | |
1784 | |
1772 o | changeset: 1:e5faa7440653
1785 o | changeset: 1:e5faa7440653
1773 |/ user: test
1786 |/ user: test
1774 | date: Thu Jan 01 00:00:00 1970 +0000
1787 | date: Thu Jan 01 00:00:00 1970 +0000
1775 | summary: change, unrelated
1788 | summary: change, unrelated
1776 |
1789 |
1777 o changeset: 0:e87515fd044a
1790 o changeset: 0:e87515fd044a
1778 user: test
1791 user: test
1779 date: Thu Jan 01 00:00:00 1970 +0000
1792 date: Thu Jan 01 00:00:00 1970 +0000
1780 summary: init, unrelated
1793 summary: init, unrelated
1781
1794
1782
1795
1783 $ hg --traceback log -f foo
1796 $ hg --traceback log -f foo
1784 changeset: 10:4dae8563d2c5
1797 changeset: 10:4dae8563d2c5
1785 tag: tip
1798 tag: tip
1786 parent: 9:7b35701b003e
1799 parent: 9:7b35701b003e
1787 parent: 4:88176d361b69
1800 parent: 4:88176d361b69
1788 user: test
1801 user: test
1789 date: Thu Jan 01 00:00:00 1970 +0000
1802 date: Thu Jan 01 00:00:00 1970 +0000
1790 summary: Last merge, related
1803 summary: Last merge, related
1791
1804
1792 changeset: 9:7b35701b003e
1805 changeset: 9:7b35701b003e
1793 parent: 8:e5416ad8a855
1806 parent: 8:e5416ad8a855
1794 parent: 7:87fe3144dcfa
1807 parent: 7:87fe3144dcfa
1795 user: test
1808 user: test
1796 date: Thu Jan 01 00:00:00 1970 +0000
1809 date: Thu Jan 01 00:00:00 1970 +0000
1797 summary: First merge, related
1810 summary: First merge, related
1798
1811
1799 changeset: 8:e5416ad8a855
1812 changeset: 8:e5416ad8a855
1800 parent: 6:dc6c325fe5ee
1813 parent: 6:dc6c325fe5ee
1801 user: test
1814 user: test
1802 date: Thu Jan 01 00:00:00 1970 +0000
1815 date: Thu Jan 01 00:00:00 1970 +0000
1803 summary: change foo in branch, related
1816 summary: change foo in branch, related
1804
1817
1805 changeset: 7:87fe3144dcfa
1818 changeset: 7:87fe3144dcfa
1806 user: test
1819 user: test
1807 date: Thu Jan 01 00:00:00 1970 +0000
1820 date: Thu Jan 01 00:00:00 1970 +0000
1808 summary: change foo, related
1821 summary: change foo, related
1809
1822
1810 changeset: 6:dc6c325fe5ee
1823 changeset: 6:dc6c325fe5ee
1811 user: test
1824 user: test
1812 date: Thu Jan 01 00:00:00 1970 +0000
1825 date: Thu Jan 01 00:00:00 1970 +0000
1813 summary: create foo, related
1826 summary: create foo, related
1814
1827
1815 changeset: 4:88176d361b69
1828 changeset: 4:88176d361b69
1816 user: test
1829 user: test
1817 date: Thu Jan 01 00:00:00 1970 +0000
1830 date: Thu Jan 01 00:00:00 1970 +0000
1818 summary: add foo, related
1831 summary: add foo, related
1819
1832
1820
1833
1821 Also check when maxrev < lastrevfilelog
1834 Also check when maxrev < lastrevfilelog
1822
1835
1823 $ hg --traceback log -f -r4 foo
1836 $ hg --traceback log -f -r4 foo
1824 changeset: 4:88176d361b69
1837 changeset: 4:88176d361b69
1825 user: test
1838 user: test
1826 date: Thu Jan 01 00:00:00 1970 +0000
1839 date: Thu Jan 01 00:00:00 1970 +0000
1827 summary: add foo, related
1840 summary: add foo, related
1828
1841
1829 $ cd ..
1842 $ cd ..
1830
1843
1831 Issue2383: hg log showing _less_ differences than hg diff
1844 Issue2383: hg log showing _less_ differences than hg diff
1832
1845
1833 $ hg init issue2383
1846 $ hg init issue2383
1834 $ cd issue2383
1847 $ cd issue2383
1835
1848
1836 Create a test repo:
1849 Create a test repo:
1837
1850
1838 $ echo a > a
1851 $ echo a > a
1839 $ hg ci -Am0
1852 $ hg ci -Am0
1840 adding a
1853 adding a
1841 $ echo b > b
1854 $ echo b > b
1842 $ hg ci -Am1
1855 $ hg ci -Am1
1843 adding b
1856 adding b
1844 $ hg co 0
1857 $ hg co 0
1845 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
1858 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
1846 $ echo b > a
1859 $ echo b > a
1847 $ hg ci -m2
1860 $ hg ci -m2
1848 created new head
1861 created new head
1849
1862
1850 Merge:
1863 Merge:
1851
1864
1852 $ hg merge
1865 $ hg merge
1853 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
1866 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
1854 (branch merge, don't forget to commit)
1867 (branch merge, don't forget to commit)
1855
1868
1856 Make sure there's a file listed in the merge to trigger the bug:
1869 Make sure there's a file listed in the merge to trigger the bug:
1857
1870
1858 $ echo c > a
1871 $ echo c > a
1859 $ hg ci -m3
1872 $ hg ci -m3
1860
1873
1861 Two files shown here in diff:
1874 Two files shown here in diff:
1862
1875
1863 $ hg diff --rev 2:3
1876 $ hg diff --rev 2:3
1864 diff -r b09be438c43a -r 8e07aafe1edc a
1877 diff -r b09be438c43a -r 8e07aafe1edc a
1865 --- a/a Thu Jan 01 00:00:00 1970 +0000
1878 --- a/a Thu Jan 01 00:00:00 1970 +0000
1866 +++ b/a Thu Jan 01 00:00:00 1970 +0000
1879 +++ b/a Thu Jan 01 00:00:00 1970 +0000
1867 @@ -1,1 +1,1 @@
1880 @@ -1,1 +1,1 @@
1868 -b
1881 -b
1869 +c
1882 +c
1870 diff -r b09be438c43a -r 8e07aafe1edc b
1883 diff -r b09be438c43a -r 8e07aafe1edc b
1871 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1884 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1872 +++ b/b Thu Jan 01 00:00:00 1970 +0000
1885 +++ b/b Thu Jan 01 00:00:00 1970 +0000
1873 @@ -0,0 +1,1 @@
1886 @@ -0,0 +1,1 @@
1874 +b
1887 +b
1875
1888
1876 Diff here should be the same:
1889 Diff here should be the same:
1877
1890
1878 $ hg log -vpr 3
1891 $ hg log -vpr 3
1879 changeset: 3:8e07aafe1edc
1892 changeset: 3:8e07aafe1edc
1880 tag: tip
1893 tag: tip
1881 parent: 2:b09be438c43a
1894 parent: 2:b09be438c43a
1882 parent: 1:925d80f479bb
1895 parent: 1:925d80f479bb
1883 user: test
1896 user: test
1884 date: Thu Jan 01 00:00:00 1970 +0000
1897 date: Thu Jan 01 00:00:00 1970 +0000
1885 files: a
1898 files: a
1886 description:
1899 description:
1887 3
1900 3
1888
1901
1889
1902
1890 diff -r b09be438c43a -r 8e07aafe1edc a
1903 diff -r b09be438c43a -r 8e07aafe1edc a
1891 --- a/a Thu Jan 01 00:00:00 1970 +0000
1904 --- a/a Thu Jan 01 00:00:00 1970 +0000
1892 +++ b/a Thu Jan 01 00:00:00 1970 +0000
1905 +++ b/a Thu Jan 01 00:00:00 1970 +0000
1893 @@ -1,1 +1,1 @@
1906 @@ -1,1 +1,1 @@
1894 -b
1907 -b
1895 +c
1908 +c
1896 diff -r b09be438c43a -r 8e07aafe1edc b
1909 diff -r b09be438c43a -r 8e07aafe1edc b
1897 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1910 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1898 +++ b/b Thu Jan 01 00:00:00 1970 +0000
1911 +++ b/b Thu Jan 01 00:00:00 1970 +0000
1899 @@ -0,0 +1,1 @@
1912 @@ -0,0 +1,1 @@
1900 +b
1913 +b
1901
1914
1902 $ cd ..
1915 $ cd ..
1903
1916
1904 'hg log -r rev fn' when last(filelog(fn)) != rev
1917 'hg log -r rev fn' when last(filelog(fn)) != rev
1905
1918
1906 $ hg init simplelog
1919 $ hg init simplelog
1907 $ cd simplelog
1920 $ cd simplelog
1908 $ echo f > a
1921 $ echo f > a
1909 $ hg ci -Am'a' -d '0 0'
1922 $ hg ci -Am'a' -d '0 0'
1910 adding a
1923 adding a
1911 $ echo f >> a
1924 $ echo f >> a
1912 $ hg ci -Am'a bis' -d '1 0'
1925 $ hg ci -Am'a bis' -d '1 0'
1913
1926
1914 $ hg log -r0 a
1927 $ hg log -r0 a
1915 changeset: 0:9f758d63dcde
1928 changeset: 0:9f758d63dcde
1916 user: test
1929 user: test
1917 date: Thu Jan 01 00:00:00 1970 +0000
1930 date: Thu Jan 01 00:00:00 1970 +0000
1918 summary: a
1931 summary: a
1919
1932
1920 enable obsolete to test hidden feature
1933 enable obsolete to test hidden feature
1921
1934
1922 $ cat >> $HGRCPATH << EOF
1935 $ cat >> $HGRCPATH << EOF
1923 > [experimental]
1936 > [experimental]
1924 > evolution.createmarkers=True
1937 > evolution.createmarkers=True
1925 > EOF
1938 > EOF
1926
1939
1927 $ hg log --template='{rev}:{node}\n'
1940 $ hg log --template='{rev}:{node}\n'
1928 1:a765632148dc55d38c35c4f247c618701886cb2f
1941 1:a765632148dc55d38c35c4f247c618701886cb2f
1929 0:9f758d63dcde62d547ebfb08e1e7ee96535f2b05
1942 0:9f758d63dcde62d547ebfb08e1e7ee96535f2b05
1930 $ hg debugobsolete a765632148dc55d38c35c4f247c618701886cb2f
1943 $ hg debugobsolete a765632148dc55d38c35c4f247c618701886cb2f
1931 obsoleted 1 changesets
1944 obsoleted 1 changesets
1932 $ hg up null -q
1945 $ hg up null -q
1933 $ hg log --template='{rev}:{node}\n'
1946 $ hg log --template='{rev}:{node}\n'
1934 0:9f758d63dcde62d547ebfb08e1e7ee96535f2b05
1947 0:9f758d63dcde62d547ebfb08e1e7ee96535f2b05
1935 $ hg log --template='{rev}:{node}\n' --hidden
1948 $ hg log --template='{rev}:{node}\n' --hidden
1936 1:a765632148dc55d38c35c4f247c618701886cb2f
1949 1:a765632148dc55d38c35c4f247c618701886cb2f
1937 0:9f758d63dcde62d547ebfb08e1e7ee96535f2b05
1950 0:9f758d63dcde62d547ebfb08e1e7ee96535f2b05
1938 $ hg log -r a
1951 $ hg log -r a
1939 abort: hidden revision 'a' is pruned!
1952 abort: hidden revision 'a' is pruned!
1940 (use --hidden to access hidden revisions)
1953 (use --hidden to access hidden revisions)
1941 [255]
1954 [255]
1942
1955
1943 test that parent prevent a changeset to be hidden
1956 test that parent prevent a changeset to be hidden
1944
1957
1945 $ hg up 1 -q --hidden
1958 $ hg up 1 -q --hidden
1946 updated to hidden changeset a765632148dc
1959 updated to hidden changeset a765632148dc
1947 (hidden revision 'a765632148dc' is pruned)
1960 (hidden revision 'a765632148dc' is pruned)
1948 $ hg log --template='{rev}:{node}\n'
1961 $ hg log --template='{rev}:{node}\n'
1949 1:a765632148dc55d38c35c4f247c618701886cb2f
1962 1:a765632148dc55d38c35c4f247c618701886cb2f
1950 0:9f758d63dcde62d547ebfb08e1e7ee96535f2b05
1963 0:9f758d63dcde62d547ebfb08e1e7ee96535f2b05
1951
1964
1952 test that second parent prevent a changeset to be hidden too
1965 test that second parent prevent a changeset to be hidden too
1953
1966
1954 $ hg debugsetparents 0 1 # nothing suitable to merge here
1967 $ hg debugsetparents 0 1 # nothing suitable to merge here
1955 $ hg log --template='{rev}:{node}\n'
1968 $ hg log --template='{rev}:{node}\n'
1956 1:a765632148dc55d38c35c4f247c618701886cb2f
1969 1:a765632148dc55d38c35c4f247c618701886cb2f
1957 0:9f758d63dcde62d547ebfb08e1e7ee96535f2b05
1970 0:9f758d63dcde62d547ebfb08e1e7ee96535f2b05
1958 $ hg debugsetparents 1
1971 $ hg debugsetparents 1
1959 $ hg up -q null
1972 $ hg up -q null
1960
1973
1961 bookmarks prevent a changeset being hidden
1974 bookmarks prevent a changeset being hidden
1962
1975
1963 $ hg bookmark --hidden -r 1 X
1976 $ hg bookmark --hidden -r 1 X
1964 bookmarking hidden changeset a765632148dc
1977 bookmarking hidden changeset a765632148dc
1965 (hidden revision 'a765632148dc' is pruned)
1978 (hidden revision 'a765632148dc' is pruned)
1966 $ hg log --template '{rev}:{node}\n'
1979 $ hg log --template '{rev}:{node}\n'
1967 1:a765632148dc55d38c35c4f247c618701886cb2f
1980 1:a765632148dc55d38c35c4f247c618701886cb2f
1968 0:9f758d63dcde62d547ebfb08e1e7ee96535f2b05
1981 0:9f758d63dcde62d547ebfb08e1e7ee96535f2b05
1969 $ hg bookmark -d X
1982 $ hg bookmark -d X
1970
1983
1971 divergent bookmarks are not hidden
1984 divergent bookmarks are not hidden
1972
1985
1973 $ hg bookmark --hidden -r 1 X@foo
1986 $ hg bookmark --hidden -r 1 X@foo
1974 bookmarking hidden changeset a765632148dc
1987 bookmarking hidden changeset a765632148dc
1975 (hidden revision 'a765632148dc' is pruned)
1988 (hidden revision 'a765632148dc' is pruned)
1976 $ hg log --template '{rev}:{node}\n'
1989 $ hg log --template '{rev}:{node}\n'
1977 1:a765632148dc55d38c35c4f247c618701886cb2f
1990 1:a765632148dc55d38c35c4f247c618701886cb2f
1978 0:9f758d63dcde62d547ebfb08e1e7ee96535f2b05
1991 0:9f758d63dcde62d547ebfb08e1e7ee96535f2b05
1979
1992
1980 test hidden revision 0 (issue5385)
1993 test hidden revision 0 (issue5385)
1981
1994
1982 $ hg bookmark -d X@foo
1995 $ hg bookmark -d X@foo
1983 $ hg up null -q
1996 $ hg up null -q
1984 $ hg debugobsolete 9f758d63dcde62d547ebfb08e1e7ee96535f2b05
1997 $ hg debugobsolete 9f758d63dcde62d547ebfb08e1e7ee96535f2b05
1985 obsoleted 1 changesets
1998 obsoleted 1 changesets
1986 $ echo f > b
1999 $ echo f > b
1987 $ hg ci -Am'b' -d '2 0'
2000 $ hg ci -Am'b' -d '2 0'
1988 adding b
2001 adding b
1989 $ echo f >> b
2002 $ echo f >> b
1990 $ hg ci -m'b bis' -d '3 0'
2003 $ hg ci -m'b bis' -d '3 0'
1991 $ hg log -T'{rev}:{node}\n'
2004 $ hg log -T'{rev}:{node}\n'
1992 3:d7d28b288a6b83d5d2cf49f10c5974deed3a1d2e
2005 3:d7d28b288a6b83d5d2cf49f10c5974deed3a1d2e
1993 2:94375ec45bddd2a824535fc04855bd058c926ec0
2006 2:94375ec45bddd2a824535fc04855bd058c926ec0
1994
2007
1995 $ hg log -T'{rev}:{node}\n' -r:
2008 $ hg log -T'{rev}:{node}\n' -r:
1996 2:94375ec45bddd2a824535fc04855bd058c926ec0
2009 2:94375ec45bddd2a824535fc04855bd058c926ec0
1997 3:d7d28b288a6b83d5d2cf49f10c5974deed3a1d2e
2010 3:d7d28b288a6b83d5d2cf49f10c5974deed3a1d2e
1998 $ hg log -T'{rev}:{node}\n' -r:tip
2011 $ hg log -T'{rev}:{node}\n' -r:tip
1999 2:94375ec45bddd2a824535fc04855bd058c926ec0
2012 2:94375ec45bddd2a824535fc04855bd058c926ec0
2000 3:d7d28b288a6b83d5d2cf49f10c5974deed3a1d2e
2013 3:d7d28b288a6b83d5d2cf49f10c5974deed3a1d2e
2001 $ hg log -T'{rev}:{node}\n' -r:0
2014 $ hg log -T'{rev}:{node}\n' -r:0
2002 abort: hidden revision '0' is pruned!
2015 abort: hidden revision '0' is pruned!
2003 (use --hidden to access hidden revisions)
2016 (use --hidden to access hidden revisions)
2004 [255]
2017 [255]
2005 $ hg log -T'{rev}:{node}\n' -f
2018 $ hg log -T'{rev}:{node}\n' -f
2006 3:d7d28b288a6b83d5d2cf49f10c5974deed3a1d2e
2019 3:d7d28b288a6b83d5d2cf49f10c5974deed3a1d2e
2007 2:94375ec45bddd2a824535fc04855bd058c926ec0
2020 2:94375ec45bddd2a824535fc04855bd058c926ec0
2008
2021
2009 clear extensions configuration
2022 clear extensions configuration
2010 $ echo '[extensions]' >> $HGRCPATH
2023 $ echo '[extensions]' >> $HGRCPATH
2011 $ echo "obs=!" >> $HGRCPATH
2024 $ echo "obs=!" >> $HGRCPATH
2012 $ cd ..
2025 $ cd ..
2013
2026
2014 test -u/-k for problematic encoding
2027 test -u/-k for problematic encoding
2015 # unicode: cp932:
2028 # unicode: cp932:
2016 # u30A2 0x83 0x41(= 'A')
2029 # u30A2 0x83 0x41(= 'A')
2017 # u30C2 0x83 0x61(= 'a')
2030 # u30C2 0x83 0x61(= 'a')
2018
2031
2019 $ hg init problematicencoding
2032 $ hg init problematicencoding
2020 $ cd problematicencoding
2033 $ cd problematicencoding
2021
2034
2022 >>> with open('setup.sh', 'wb') as f:
2035 >>> with open('setup.sh', 'wb') as f:
2023 ... f.write(u'''
2036 ... f.write(u'''
2024 ... echo a > text
2037 ... echo a > text
2025 ... hg add text
2038 ... hg add text
2026 ... hg --encoding utf-8 commit -u '\u30A2' -m none
2039 ... hg --encoding utf-8 commit -u '\u30A2' -m none
2027 ... echo b > text
2040 ... echo b > text
2028 ... hg --encoding utf-8 commit -u '\u30C2' -m none
2041 ... hg --encoding utf-8 commit -u '\u30C2' -m none
2029 ... echo c > text
2042 ... echo c > text
2030 ... hg --encoding utf-8 commit -u none -m '\u30A2'
2043 ... hg --encoding utf-8 commit -u none -m '\u30A2'
2031 ... echo d > text
2044 ... echo d > text
2032 ... hg --encoding utf-8 commit -u none -m '\u30C2'
2045 ... hg --encoding utf-8 commit -u none -m '\u30C2'
2033 ... '''.encode('utf-8')) and None
2046 ... '''.encode('utf-8')) and None
2034 $ sh < setup.sh
2047 $ sh < setup.sh
2035
2048
2036 test in problematic encoding
2049 test in problematic encoding
2037 >>> with open('test.sh', 'wb') as f:
2050 >>> with open('test.sh', 'wb') as f:
2038 ... f.write(u'''
2051 ... f.write(u'''
2039 ... hg --encoding cp932 log --template '{rev}\\n' -u '\u30A2'
2052 ... hg --encoding cp932 log --template '{rev}\\n' -u '\u30A2'
2040 ... echo ====
2053 ... echo ====
2041 ... hg --encoding cp932 log --template '{rev}\\n' -u '\u30C2'
2054 ... hg --encoding cp932 log --template '{rev}\\n' -u '\u30C2'
2042 ... echo ====
2055 ... echo ====
2043 ... hg --encoding cp932 log --template '{rev}\\n' -k '\u30A2'
2056 ... hg --encoding cp932 log --template '{rev}\\n' -k '\u30A2'
2044 ... echo ====
2057 ... echo ====
2045 ... hg --encoding cp932 log --template '{rev}\\n' -k '\u30C2'
2058 ... hg --encoding cp932 log --template '{rev}\\n' -k '\u30C2'
2046 ... '''.encode('cp932')) and None
2059 ... '''.encode('cp932')) and None
2047 $ sh < test.sh
2060 $ sh < test.sh
2048 0
2061 0
2049 ====
2062 ====
2050 1
2063 1
2051 ====
2064 ====
2052 2
2065 2
2053 0
2066 0
2054 ====
2067 ====
2055 3
2068 3
2056 1
2069 1
2057
2070
2058 $ cd ..
2071 $ cd ..
2059
2072
2060 test hg log on non-existent files and on directories
2073 test hg log on non-existent files and on directories
2061 $ hg init issue1340
2074 $ hg init issue1340
2062 $ cd issue1340
2075 $ cd issue1340
2063 $ mkdir d1; mkdir D2; mkdir D3.i; mkdir d4.hg; mkdir d5.d; mkdir .d6
2076 $ mkdir d1; mkdir D2; mkdir D3.i; mkdir d4.hg; mkdir d5.d; mkdir .d6
2064 $ echo 1 > d1/f1
2077 $ echo 1 > d1/f1
2065 $ echo 1 > D2/f1
2078 $ echo 1 > D2/f1
2066 $ echo 1 > D3.i/f1
2079 $ echo 1 > D3.i/f1
2067 $ echo 1 > d4.hg/f1
2080 $ echo 1 > d4.hg/f1
2068 $ echo 1 > d5.d/f1
2081 $ echo 1 > d5.d/f1
2069 $ echo 1 > .d6/f1
2082 $ echo 1 > .d6/f1
2070 $ hg -q add .
2083 $ hg -q add .
2071 $ hg commit -m "a bunch of weird directories"
2084 $ hg commit -m "a bunch of weird directories"
2072 $ hg log -l1 d1/f1 | grep changeset
2085 $ hg log -l1 d1/f1 | grep changeset
2073 changeset: 0:65624cd9070a
2086 changeset: 0:65624cd9070a
2074 $ hg log -l1 f1
2087 $ hg log -l1 f1
2075 $ hg log -l1 . | grep changeset
2088 $ hg log -l1 . | grep changeset
2076 changeset: 0:65624cd9070a
2089 changeset: 0:65624cd9070a
2077 $ hg log -l1 ./ | grep changeset
2090 $ hg log -l1 ./ | grep changeset
2078 changeset: 0:65624cd9070a
2091 changeset: 0:65624cd9070a
2079 $ hg log -l1 d1 | grep changeset
2092 $ hg log -l1 d1 | grep changeset
2080 changeset: 0:65624cd9070a
2093 changeset: 0:65624cd9070a
2081 $ hg log -l1 D2 | grep changeset
2094 $ hg log -l1 D2 | grep changeset
2082 changeset: 0:65624cd9070a
2095 changeset: 0:65624cd9070a
2083 $ hg log -l1 D2/f1 | grep changeset
2096 $ hg log -l1 D2/f1 | grep changeset
2084 changeset: 0:65624cd9070a
2097 changeset: 0:65624cd9070a
2085 $ hg log -l1 D3.i | grep changeset
2098 $ hg log -l1 D3.i | grep changeset
2086 changeset: 0:65624cd9070a
2099 changeset: 0:65624cd9070a
2087 $ hg log -l1 D3.i/f1 | grep changeset
2100 $ hg log -l1 D3.i/f1 | grep changeset
2088 changeset: 0:65624cd9070a
2101 changeset: 0:65624cd9070a
2089 $ hg log -l1 d4.hg | grep changeset
2102 $ hg log -l1 d4.hg | grep changeset
2090 changeset: 0:65624cd9070a
2103 changeset: 0:65624cd9070a
2091 $ hg log -l1 d4.hg/f1 | grep changeset
2104 $ hg log -l1 d4.hg/f1 | grep changeset
2092 changeset: 0:65624cd9070a
2105 changeset: 0:65624cd9070a
2093 $ hg log -l1 d5.d | grep changeset
2106 $ hg log -l1 d5.d | grep changeset
2094 changeset: 0:65624cd9070a
2107 changeset: 0:65624cd9070a
2095 $ hg log -l1 d5.d/f1 | grep changeset
2108 $ hg log -l1 d5.d/f1 | grep changeset
2096 changeset: 0:65624cd9070a
2109 changeset: 0:65624cd9070a
2097 $ hg log -l1 .d6 | grep changeset
2110 $ hg log -l1 .d6 | grep changeset
2098 changeset: 0:65624cd9070a
2111 changeset: 0:65624cd9070a
2099 $ hg log -l1 .d6/f1 | grep changeset
2112 $ hg log -l1 .d6/f1 | grep changeset
2100 changeset: 0:65624cd9070a
2113 changeset: 0:65624cd9070a
2101
2114
2102 issue3772: hg log -r :null showing revision 0 as well
2115 issue3772: hg log -r :null showing revision 0 as well
2103
2116
2104 $ hg log -r :null
2117 $ hg log -r :null
2105 changeset: 0:65624cd9070a
2118 changeset: 0:65624cd9070a
2106 tag: tip
2119 tag: tip
2107 user: test
2120 user: test
2108 date: Thu Jan 01 00:00:00 1970 +0000
2121 date: Thu Jan 01 00:00:00 1970 +0000
2109 summary: a bunch of weird directories
2122 summary: a bunch of weird directories
2110
2123
2111 changeset: -1:000000000000
2124 changeset: -1:000000000000
2112 user:
2125 user:
2113 date: Thu Jan 01 00:00:00 1970 +0000
2126 date: Thu Jan 01 00:00:00 1970 +0000
2114
2127
2115 $ hg log -r null:null
2128 $ hg log -r null:null
2116 changeset: -1:000000000000
2129 changeset: -1:000000000000
2117 user:
2130 user:
2118 date: Thu Jan 01 00:00:00 1970 +0000
2131 date: Thu Jan 01 00:00:00 1970 +0000
2119
2132
2120 working-directory revision requires special treatment
2133 working-directory revision requires special treatment
2121
2134
2122 clean:
2135 clean:
2123
2136
2124 $ hg log -r 'wdir()' --debug
2137 $ hg log -r 'wdir()' --debug
2125 changeset: 2147483647:ffffffffffffffffffffffffffffffffffffffff
2138 changeset: 2147483647:ffffffffffffffffffffffffffffffffffffffff
2126 phase: draft
2139 phase: draft
2127 parent: 0:65624cd9070a035fa7191a54f2b8af39f16b0c08
2140 parent: 0:65624cd9070a035fa7191a54f2b8af39f16b0c08
2128 parent: -1:0000000000000000000000000000000000000000
2141 parent: -1:0000000000000000000000000000000000000000
2129 manifest: 2147483647:ffffffffffffffffffffffffffffffffffffffff
2142 manifest: 2147483647:ffffffffffffffffffffffffffffffffffffffff
2130 user: test
2143 user: test
2131 date: [A-Za-z0-9:+ ]+ (re)
2144 date: [A-Za-z0-9:+ ]+ (re)
2132 extra: branch=default
2145 extra: branch=default
2133
2146
2134 $ hg log -r 'wdir()' -p --stat
2147 $ hg log -r 'wdir()' -p --stat
2135 changeset: 2147483647:ffffffffffff
2148 changeset: 2147483647:ffffffffffff
2136 parent: 0:65624cd9070a
2149 parent: 0:65624cd9070a
2137 user: test
2150 user: test
2138 date: [A-Za-z0-9:+ ]+ (re)
2151 date: [A-Za-z0-9:+ ]+ (re)
2139
2152
2140
2153
2141
2154
2142
2155
2143 dirty:
2156 dirty:
2144
2157
2145 $ echo 2 >> d1/f1
2158 $ echo 2 >> d1/f1
2146 $ echo 2 > d1/f2
2159 $ echo 2 > d1/f2
2147 $ hg add d1/f2
2160 $ hg add d1/f2
2148 $ hg remove .d6/f1
2161 $ hg remove .d6/f1
2149 $ hg status
2162 $ hg status
2150 M d1/f1
2163 M d1/f1
2151 A d1/f2
2164 A d1/f2
2152 R .d6/f1
2165 R .d6/f1
2153
2166
2154 $ hg log -r 'wdir()'
2167 $ hg log -r 'wdir()'
2155 changeset: 2147483647:ffffffffffff
2168 changeset: 2147483647:ffffffffffff
2156 parent: 0:65624cd9070a
2169 parent: 0:65624cd9070a
2157 user: test
2170 user: test
2158 date: [A-Za-z0-9:+ ]+ (re)
2171 date: [A-Za-z0-9:+ ]+ (re)
2159
2172
2160 $ hg log -r 'wdir()' -q
2173 $ hg log -r 'wdir()' -q
2161 2147483647:ffffffffffff
2174 2147483647:ffffffffffff
2162
2175
2163 $ hg log -r 'wdir()' --debug
2176 $ hg log -r 'wdir()' --debug
2164 changeset: 2147483647:ffffffffffffffffffffffffffffffffffffffff
2177 changeset: 2147483647:ffffffffffffffffffffffffffffffffffffffff
2165 phase: draft
2178 phase: draft
2166 parent: 0:65624cd9070a035fa7191a54f2b8af39f16b0c08
2179 parent: 0:65624cd9070a035fa7191a54f2b8af39f16b0c08
2167 parent: -1:0000000000000000000000000000000000000000
2180 parent: -1:0000000000000000000000000000000000000000
2168 manifest: 2147483647:ffffffffffffffffffffffffffffffffffffffff
2181 manifest: 2147483647:ffffffffffffffffffffffffffffffffffffffff
2169 user: test
2182 user: test
2170 date: [A-Za-z0-9:+ ]+ (re)
2183 date: [A-Za-z0-9:+ ]+ (re)
2171 files: d1/f1
2184 files: d1/f1
2172 files+: d1/f2
2185 files+: d1/f2
2173 files-: .d6/f1
2186 files-: .d6/f1
2174 extra: branch=default
2187 extra: branch=default
2175
2188
2176 $ hg log -r 'wdir()' -p --stat --git
2189 $ hg log -r 'wdir()' -p --stat --git
2177 changeset: 2147483647:ffffffffffff
2190 changeset: 2147483647:ffffffffffff
2178 parent: 0:65624cd9070a
2191 parent: 0:65624cd9070a
2179 user: test
2192 user: test
2180 date: [A-Za-z0-9:+ ]+ (re)
2193 date: [A-Za-z0-9:+ ]+ (re)
2181
2194
2182 .d6/f1 | 1 -
2195 .d6/f1 | 1 -
2183 d1/f1 | 1 +
2196 d1/f1 | 1 +
2184 d1/f2 | 1 +
2197 d1/f2 | 1 +
2185 3 files changed, 2 insertions(+), 1 deletions(-)
2198 3 files changed, 2 insertions(+), 1 deletions(-)
2186
2199
2187 diff --git a/.d6/f1 b/.d6/f1
2200 diff --git a/.d6/f1 b/.d6/f1
2188 deleted file mode 100644
2201 deleted file mode 100644
2189 --- a/.d6/f1
2202 --- a/.d6/f1
2190 +++ /dev/null
2203 +++ /dev/null
2191 @@ -1,1 +0,0 @@
2204 @@ -1,1 +0,0 @@
2192 -1
2205 -1
2193 diff --git a/d1/f1 b/d1/f1
2206 diff --git a/d1/f1 b/d1/f1
2194 --- a/d1/f1
2207 --- a/d1/f1
2195 +++ b/d1/f1
2208 +++ b/d1/f1
2196 @@ -1,1 +1,2 @@
2209 @@ -1,1 +1,2 @@
2197 1
2210 1
2198 +2
2211 +2
2199 diff --git a/d1/f2 b/d1/f2
2212 diff --git a/d1/f2 b/d1/f2
2200 new file mode 100644
2213 new file mode 100644
2201 --- /dev/null
2214 --- /dev/null
2202 +++ b/d1/f2
2215 +++ b/d1/f2
2203 @@ -0,0 +1,1 @@
2216 @@ -0,0 +1,1 @@
2204 +2
2217 +2
2205
2218
2206 $ hg log -r 'wdir()' -Tjson
2219 $ hg log -r 'wdir()' -Tjson
2207 [
2220 [
2208 {
2221 {
2209 "bookmarks": [],
2222 "bookmarks": [],
2210 "branch": "default",
2223 "branch": "default",
2211 "date": [*, 0], (glob)
2224 "date": [*, 0], (glob)
2212 "desc": "",
2225 "desc": "",
2213 "node": "ffffffffffffffffffffffffffffffffffffffff",
2226 "node": "ffffffffffffffffffffffffffffffffffffffff",
2214 "parents": ["65624cd9070a035fa7191a54f2b8af39f16b0c08"],
2227 "parents": ["65624cd9070a035fa7191a54f2b8af39f16b0c08"],
2215 "phase": "draft",
2228 "phase": "draft",
2216 "rev": 2147483647,
2229 "rev": 2147483647,
2217 "tags": [],
2230 "tags": [],
2218 "user": "test"
2231 "user": "test"
2219 }
2232 }
2220 ]
2233 ]
2221
2234
2222 $ hg log -r 'wdir()' -Tjson -q
2235 $ hg log -r 'wdir()' -Tjson -q
2223 [
2236 [
2224 {
2237 {
2225 "node": "ffffffffffffffffffffffffffffffffffffffff",
2238 "node": "ffffffffffffffffffffffffffffffffffffffff",
2226 "rev": 2147483647
2239 "rev": 2147483647
2227 }
2240 }
2228 ]
2241 ]
2229
2242
2230 $ hg log -r 'wdir()' -Tjson --debug
2243 $ hg log -r 'wdir()' -Tjson --debug
2231 [
2244 [
2232 {
2245 {
2233 "added": ["d1/f2"],
2246 "added": ["d1/f2"],
2234 "bookmarks": [],
2247 "bookmarks": [],
2235 "branch": "default",
2248 "branch": "default",
2236 "date": [*, 0], (glob)
2249 "date": [*, 0], (glob)
2237 "desc": "",
2250 "desc": "",
2238 "extra": {"branch": "default"},
2251 "extra": {"branch": "default"},
2239 "manifest": "ffffffffffffffffffffffffffffffffffffffff",
2252 "manifest": "ffffffffffffffffffffffffffffffffffffffff",
2240 "modified": ["d1/f1"],
2253 "modified": ["d1/f1"],
2241 "node": "ffffffffffffffffffffffffffffffffffffffff",
2254 "node": "ffffffffffffffffffffffffffffffffffffffff",
2242 "parents": ["65624cd9070a035fa7191a54f2b8af39f16b0c08"],
2255 "parents": ["65624cd9070a035fa7191a54f2b8af39f16b0c08"],
2243 "phase": "draft",
2256 "phase": "draft",
2244 "removed": [".d6/f1"],
2257 "removed": [".d6/f1"],
2245 "rev": 2147483647,
2258 "rev": 2147483647,
2246 "tags": [],
2259 "tags": [],
2247 "user": "test"
2260 "user": "test"
2248 }
2261 }
2249 ]
2262 ]
2250
2263
2251 $ hg revert -aqC
2264 $ hg revert -aqC
2252
2265
2253 Check that adding an arbitrary name shows up in log automatically
2266 Check that adding an arbitrary name shows up in log automatically
2254
2267
2255 $ cat > ../names.py <<EOF
2268 $ cat > ../names.py <<EOF
2256 > """A small extension to test adding arbitrary names to a repo"""
2269 > """A small extension to test adding arbitrary names to a repo"""
2257 > from __future__ import absolute_import
2270 > from __future__ import absolute_import
2258 > from mercurial import namespaces
2271 > from mercurial import namespaces
2259 >
2272 >
2260 > def reposetup(ui, repo):
2273 > def reposetup(ui, repo):
2261 > foo = {b'foo': repo[0].node()}
2274 > foo = {b'foo': repo[0].node()}
2262 > names = lambda r: foo.keys()
2275 > names = lambda r: foo.keys()
2263 > namemap = lambda r, name: foo.get(name)
2276 > namemap = lambda r, name: foo.get(name)
2264 > nodemap = lambda r, node: [name for name, n in foo.items()
2277 > nodemap = lambda r, node: [name for name, n in foo.items()
2265 > if n == node]
2278 > if n == node]
2266 > ns = namespaces.namespace(
2279 > ns = namespaces.namespace(
2267 > b"bars", templatename=b"bar", logname=b"barlog",
2280 > b"bars", templatename=b"bar", logname=b"barlog",
2268 > colorname=b"barcolor", listnames=names, namemap=namemap,
2281 > colorname=b"barcolor", listnames=names, namemap=namemap,
2269 > nodemap=nodemap)
2282 > nodemap=nodemap)
2270 >
2283 >
2271 > repo.names.addnamespace(ns)
2284 > repo.names.addnamespace(ns)
2272 > EOF
2285 > EOF
2273
2286
2274 $ hg --config extensions.names=../names.py log -r 0
2287 $ hg --config extensions.names=../names.py log -r 0
2275 changeset: 0:65624cd9070a
2288 changeset: 0:65624cd9070a
2276 tag: tip
2289 tag: tip
2277 barlog: foo
2290 barlog: foo
2278 user: test
2291 user: test
2279 date: Thu Jan 01 00:00:00 1970 +0000
2292 date: Thu Jan 01 00:00:00 1970 +0000
2280 summary: a bunch of weird directories
2293 summary: a bunch of weird directories
2281
2294
2282 $ hg --config extensions.names=../names.py \
2295 $ hg --config extensions.names=../names.py \
2283 > --config extensions.color= --config color.log.barcolor=red \
2296 > --config extensions.color= --config color.log.barcolor=red \
2284 > --color=always log -r 0
2297 > --color=always log -r 0
2285 \x1b[0;33mchangeset: 0:65624cd9070a\x1b[0m (esc)
2298 \x1b[0;33mchangeset: 0:65624cd9070a\x1b[0m (esc)
2286 tag: tip
2299 tag: tip
2287 \x1b[0;31mbarlog: foo\x1b[0m (esc)
2300 \x1b[0;31mbarlog: foo\x1b[0m (esc)
2288 user: test
2301 user: test
2289 date: Thu Jan 01 00:00:00 1970 +0000
2302 date: Thu Jan 01 00:00:00 1970 +0000
2290 summary: a bunch of weird directories
2303 summary: a bunch of weird directories
2291
2304
2292 $ hg --config extensions.names=../names.py log -r 0 --template '{bars}\n'
2305 $ hg --config extensions.names=../names.py log -r 0 --template '{bars}\n'
2293 foo
2306 foo
2294
2307
2295 Templater parse errors:
2308 Templater parse errors:
2296
2309
2297 simple error
2310 simple error
2298 $ hg log -r . -T '{shortest(node}'
2311 $ hg log -r . -T '{shortest(node}'
2299 hg: parse error at 14: unexpected token: end
2312 hg: parse error at 14: unexpected token: end
2300 ({shortest(node}
2313 ({shortest(node}
2301 ^ here)
2314 ^ here)
2302 [255]
2315 [255]
2303
2316
2304 multi-line template with error
2317 multi-line template with error
2305 $ hg log -r . -T 'line 1
2318 $ hg log -r . -T 'line 1
2306 > line2
2319 > line2
2307 > {shortest(node}
2320 > {shortest(node}
2308 > line4\nline5'
2321 > line4\nline5'
2309 hg: parse error at 27: unexpected token: end
2322 hg: parse error at 27: unexpected token: end
2310 (line 1\nline2\n{shortest(node}\nline4\nline5
2323 (line 1\nline2\n{shortest(node}\nline4\nline5
2311 ^ here)
2324 ^ here)
2312 [255]
2325 [255]
2313
2326
2314 $ cd ..
2327 $ cd ..
2315
2328
2316 hg log -f dir across branches
2329 hg log -f dir across branches
2317
2330
2318 $ hg init acrossbranches
2331 $ hg init acrossbranches
2319 $ cd acrossbranches
2332 $ cd acrossbranches
2320 $ mkdir d
2333 $ mkdir d
2321 $ echo a > d/a && hg ci -Aqm a
2334 $ echo a > d/a && hg ci -Aqm a
2322 $ echo b > d/a && hg ci -Aqm b
2335 $ echo b > d/a && hg ci -Aqm b
2323 $ hg up -q 0
2336 $ hg up -q 0
2324 $ echo b > d/a && hg ci -Aqm c
2337 $ echo b > d/a && hg ci -Aqm c
2325 $ hg log -f d -T '{desc}' -G
2338 $ hg log -f d -T '{desc}' -G
2326 @ c
2339 @ c
2327 |
2340 |
2328 o a
2341 o a
2329
2342
2330 Ensure that largefiles doesn't interfere with following a normal file
2343 Ensure that largefiles doesn't interfere with following a normal file
2331 $ hg --config extensions.largefiles= log -f d -T '{desc}' -G
2344 $ hg --config extensions.largefiles= log -f d -T '{desc}' -G
2332 The fsmonitor extension is incompatible with the largefiles extension and has been disabled. (fsmonitor !)
2345 The fsmonitor extension is incompatible with the largefiles extension and has been disabled. (fsmonitor !)
2333 @ c
2346 @ c
2334 |
2347 |
2335 o a
2348 o a
2336
2349
2337 $ hg log -f d/a -T '{desc}' -G
2350 $ hg log -f d/a -T '{desc}' -G
2338 @ c
2351 @ c
2339 |
2352 |
2340 o a
2353 o a
2341
2354
2342 $ cd ..
2355 $ cd ..
2343
2356
2344 hg log -f with linkrev pointing to another branch
2357 hg log -f with linkrev pointing to another branch
2345 -------------------------------------------------
2358 -------------------------------------------------
2346
2359
2347 create history with a filerev whose linkrev points to another branch
2360 create history with a filerev whose linkrev points to another branch
2348
2361
2349 $ hg init branchedlinkrev
2362 $ hg init branchedlinkrev
2350 $ cd branchedlinkrev
2363 $ cd branchedlinkrev
2351 $ echo 1 > a
2364 $ echo 1 > a
2352 $ hg commit -Am 'content1'
2365 $ hg commit -Am 'content1'
2353 adding a
2366 adding a
2354 $ echo 2 > a
2367 $ echo 2 > a
2355 $ hg commit -m 'content2'
2368 $ hg commit -m 'content2'
2356 $ hg up --rev 'desc(content1)'
2369 $ hg up --rev 'desc(content1)'
2357 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
2370 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
2358 $ echo unrelated > unrelated
2371 $ echo unrelated > unrelated
2359 $ hg commit -Am 'unrelated'
2372 $ hg commit -Am 'unrelated'
2360 adding unrelated
2373 adding unrelated
2361 created new head
2374 created new head
2362 $ hg graft -r 'desc(content2)'
2375 $ hg graft -r 'desc(content2)'
2363 grafting 1:2294ae80ad84 "content2"
2376 grafting 1:2294ae80ad84 "content2"
2364 $ echo 3 > a
2377 $ echo 3 > a
2365 $ hg commit -m 'content3'
2378 $ hg commit -m 'content3'
2366 $ hg log -G
2379 $ hg log -G
2367 @ changeset: 4:50b9b36e9c5d
2380 @ changeset: 4:50b9b36e9c5d
2368 | tag: tip
2381 | tag: tip
2369 | user: test
2382 | user: test
2370 | date: Thu Jan 01 00:00:00 1970 +0000
2383 | date: Thu Jan 01 00:00:00 1970 +0000
2371 | summary: content3
2384 | summary: content3
2372 |
2385 |
2373 o changeset: 3:15b2327059e5
2386 o changeset: 3:15b2327059e5
2374 | user: test
2387 | user: test
2375 | date: Thu Jan 01 00:00:00 1970 +0000
2388 | date: Thu Jan 01 00:00:00 1970 +0000
2376 | summary: content2
2389 | summary: content2
2377 |
2390 |
2378 o changeset: 2:2029acd1168c
2391 o changeset: 2:2029acd1168c
2379 | parent: 0:ae0a3c9f9e95
2392 | parent: 0:ae0a3c9f9e95
2380 | user: test
2393 | user: test
2381 | date: Thu Jan 01 00:00:00 1970 +0000
2394 | date: Thu Jan 01 00:00:00 1970 +0000
2382 | summary: unrelated
2395 | summary: unrelated
2383 |
2396 |
2384 | o changeset: 1:2294ae80ad84
2397 | o changeset: 1:2294ae80ad84
2385 |/ user: test
2398 |/ user: test
2386 | date: Thu Jan 01 00:00:00 1970 +0000
2399 | date: Thu Jan 01 00:00:00 1970 +0000
2387 | summary: content2
2400 | summary: content2
2388 |
2401 |
2389 o changeset: 0:ae0a3c9f9e95
2402 o changeset: 0:ae0a3c9f9e95
2390 user: test
2403 user: test
2391 date: Thu Jan 01 00:00:00 1970 +0000
2404 date: Thu Jan 01 00:00:00 1970 +0000
2392 summary: content1
2405 summary: content1
2393
2406
2394
2407
2395 log -f on the file should list the graft result.
2408 log -f on the file should list the graft result.
2396
2409
2397 $ hg log -Gf a
2410 $ hg log -Gf a
2398 @ changeset: 4:50b9b36e9c5d
2411 @ changeset: 4:50b9b36e9c5d
2399 | tag: tip
2412 | tag: tip
2400 | user: test
2413 | user: test
2401 | date: Thu Jan 01 00:00:00 1970 +0000
2414 | date: Thu Jan 01 00:00:00 1970 +0000
2402 | summary: content3
2415 | summary: content3
2403 |
2416 |
2404 o changeset: 3:15b2327059e5
2417 o changeset: 3:15b2327059e5
2405 : user: test
2418 : user: test
2406 : date: Thu Jan 01 00:00:00 1970 +0000
2419 : date: Thu Jan 01 00:00:00 1970 +0000
2407 : summary: content2
2420 : summary: content2
2408 :
2421 :
2409 o changeset: 0:ae0a3c9f9e95
2422 o changeset: 0:ae0a3c9f9e95
2410 user: test
2423 user: test
2411 date: Thu Jan 01 00:00:00 1970 +0000
2424 date: Thu Jan 01 00:00:00 1970 +0000
2412 summary: content1
2425 summary: content1
2413
2426
2414
2427
2415 plain log lists the original version
2428 plain log lists the original version
2416 (XXX we should probably list both)
2429 (XXX we should probably list both)
2417
2430
2418 $ hg log -G a
2431 $ hg log -G a
2419 @ changeset: 4:50b9b36e9c5d
2432 @ changeset: 4:50b9b36e9c5d
2420 : tag: tip
2433 : tag: tip
2421 : user: test
2434 : user: test
2422 : date: Thu Jan 01 00:00:00 1970 +0000
2435 : date: Thu Jan 01 00:00:00 1970 +0000
2423 : summary: content3
2436 : summary: content3
2424 :
2437 :
2425 : o changeset: 1:2294ae80ad84
2438 : o changeset: 1:2294ae80ad84
2426 :/ user: test
2439 :/ user: test
2427 : date: Thu Jan 01 00:00:00 1970 +0000
2440 : date: Thu Jan 01 00:00:00 1970 +0000
2428 : summary: content2
2441 : summary: content2
2429 :
2442 :
2430 o changeset: 0:ae0a3c9f9e95
2443 o changeset: 0:ae0a3c9f9e95
2431 user: test
2444 user: test
2432 date: Thu Jan 01 00:00:00 1970 +0000
2445 date: Thu Jan 01 00:00:00 1970 +0000
2433 summary: content1
2446 summary: content1
2434
2447
2435
2448
2436 hg log -f from the grafted changeset
2449 hg log -f from the grafted changeset
2437 (The bootstrap should properly take the topology in account)
2450 (The bootstrap should properly take the topology in account)
2438
2451
2439 $ hg up 'desc(content3)^'
2452 $ hg up 'desc(content3)^'
2440 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
2453 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
2441 $ hg log -Gf a
2454 $ hg log -Gf a
2442 @ changeset: 3:15b2327059e5
2455 @ changeset: 3:15b2327059e5
2443 : user: test
2456 : user: test
2444 : date: Thu Jan 01 00:00:00 1970 +0000
2457 : date: Thu Jan 01 00:00:00 1970 +0000
2445 : summary: content2
2458 : summary: content2
2446 :
2459 :
2447 o changeset: 0:ae0a3c9f9e95
2460 o changeset: 0:ae0a3c9f9e95
2448 user: test
2461 user: test
2449 date: Thu Jan 01 00:00:00 1970 +0000
2462 date: Thu Jan 01 00:00:00 1970 +0000
2450 summary: content1
2463 summary: content1
2451
2464
2452
2465
2453 Test that we use the first non-hidden changeset in that case.
2466 Test that we use the first non-hidden changeset in that case.
2454
2467
2455 (hide the changeset)
2468 (hide the changeset)
2456
2469
2457 $ hg log -T '{node}\n' -r 1
2470 $ hg log -T '{node}\n' -r 1
2458 2294ae80ad8447bc78383182eeac50cb049df623
2471 2294ae80ad8447bc78383182eeac50cb049df623
2459 $ hg debugobsolete 2294ae80ad8447bc78383182eeac50cb049df623
2472 $ hg debugobsolete 2294ae80ad8447bc78383182eeac50cb049df623
2460 obsoleted 1 changesets
2473 obsoleted 1 changesets
2461 $ hg log -G
2474 $ hg log -G
2462 o changeset: 4:50b9b36e9c5d
2475 o changeset: 4:50b9b36e9c5d
2463 | tag: tip
2476 | tag: tip
2464 | user: test
2477 | user: test
2465 | date: Thu Jan 01 00:00:00 1970 +0000
2478 | date: Thu Jan 01 00:00:00 1970 +0000
2466 | summary: content3
2479 | summary: content3
2467 |
2480 |
2468 @ changeset: 3:15b2327059e5
2481 @ changeset: 3:15b2327059e5
2469 | user: test
2482 | user: test
2470 | date: Thu Jan 01 00:00:00 1970 +0000
2483 | date: Thu Jan 01 00:00:00 1970 +0000
2471 | summary: content2
2484 | summary: content2
2472 |
2485 |
2473 o changeset: 2:2029acd1168c
2486 o changeset: 2:2029acd1168c
2474 | parent: 0:ae0a3c9f9e95
2487 | parent: 0:ae0a3c9f9e95
2475 | user: test
2488 | user: test
2476 | date: Thu Jan 01 00:00:00 1970 +0000
2489 | date: Thu Jan 01 00:00:00 1970 +0000
2477 | summary: unrelated
2490 | summary: unrelated
2478 |
2491 |
2479 o changeset: 0:ae0a3c9f9e95
2492 o changeset: 0:ae0a3c9f9e95
2480 user: test
2493 user: test
2481 date: Thu Jan 01 00:00:00 1970 +0000
2494 date: Thu Jan 01 00:00:00 1970 +0000
2482 summary: content1
2495 summary: content1
2483
2496
2484
2497
2485 Check that log on the file does not drop the file revision.
2498 Check that log on the file does not drop the file revision.
2486
2499
2487 $ hg log -G a
2500 $ hg log -G a
2488 o changeset: 4:50b9b36e9c5d
2501 o changeset: 4:50b9b36e9c5d
2489 | tag: tip
2502 | tag: tip
2490 | user: test
2503 | user: test
2491 | date: Thu Jan 01 00:00:00 1970 +0000
2504 | date: Thu Jan 01 00:00:00 1970 +0000
2492 | summary: content3
2505 | summary: content3
2493 |
2506 |
2494 @ changeset: 3:15b2327059e5
2507 @ changeset: 3:15b2327059e5
2495 : user: test
2508 : user: test
2496 : date: Thu Jan 01 00:00:00 1970 +0000
2509 : date: Thu Jan 01 00:00:00 1970 +0000
2497 : summary: content2
2510 : summary: content2
2498 :
2511 :
2499 o changeset: 0:ae0a3c9f9e95
2512 o changeset: 0:ae0a3c9f9e95
2500 user: test
2513 user: test
2501 date: Thu Jan 01 00:00:00 1970 +0000
2514 date: Thu Jan 01 00:00:00 1970 +0000
2502 summary: content1
2515 summary: content1
2503
2516
2504
2517
2505 Even when a head revision is linkrev-shadowed.
2518 Even when a head revision is linkrev-shadowed.
2506
2519
2507 $ hg log -T '{node}\n' -r 4
2520 $ hg log -T '{node}\n' -r 4
2508 50b9b36e9c5df2c6fc6dcefa8ad0da929e84aed2
2521 50b9b36e9c5df2c6fc6dcefa8ad0da929e84aed2
2509 $ hg debugobsolete 50b9b36e9c5df2c6fc6dcefa8ad0da929e84aed2
2522 $ hg debugobsolete 50b9b36e9c5df2c6fc6dcefa8ad0da929e84aed2
2510 obsoleted 1 changesets
2523 obsoleted 1 changesets
2511 $ hg log -G a
2524 $ hg log -G a
2512 @ changeset: 3:15b2327059e5
2525 @ changeset: 3:15b2327059e5
2513 : tag: tip
2526 : tag: tip
2514 : user: test
2527 : user: test
2515 : date: Thu Jan 01 00:00:00 1970 +0000
2528 : date: Thu Jan 01 00:00:00 1970 +0000
2516 : summary: content2
2529 : summary: content2
2517 :
2530 :
2518 o changeset: 0:ae0a3c9f9e95
2531 o changeset: 0:ae0a3c9f9e95
2519 user: test
2532 user: test
2520 date: Thu Jan 01 00:00:00 1970 +0000
2533 date: Thu Jan 01 00:00:00 1970 +0000
2521 summary: content1
2534 summary: content1
2522
2535
2523
2536
2524 $ cd ..
2537 $ cd ..
2525
2538
2526 Even when the file revision is missing from some head:
2539 Even when the file revision is missing from some head:
2527
2540
2528 $ hg init issue4490
2541 $ hg init issue4490
2529 $ cd issue4490
2542 $ cd issue4490
2530 $ echo '[experimental]' >> .hg/hgrc
2543 $ echo '[experimental]' >> .hg/hgrc
2531 $ echo 'evolution.createmarkers=True' >> .hg/hgrc
2544 $ echo 'evolution.createmarkers=True' >> .hg/hgrc
2532 $ echo a > a
2545 $ echo a > a
2533 $ hg ci -Am0
2546 $ hg ci -Am0
2534 adding a
2547 adding a
2535 $ echo b > b
2548 $ echo b > b
2536 $ hg ci -Am1
2549 $ hg ci -Am1
2537 adding b
2550 adding b
2538 $ echo B > b
2551 $ echo B > b
2539 $ hg ci --amend -m 1
2552 $ hg ci --amend -m 1
2540 $ hg up 0
2553 $ hg up 0
2541 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
2554 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
2542 $ echo c > c
2555 $ echo c > c
2543 $ hg ci -Am2
2556 $ hg ci -Am2
2544 adding c
2557 adding c
2545 created new head
2558 created new head
2546 $ hg up 'head() and not .'
2559 $ hg up 'head() and not .'
2547 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
2560 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
2548 $ hg log -G
2561 $ hg log -G
2549 o changeset: 3:db815d6d32e6
2562 o changeset: 3:db815d6d32e6
2550 | tag: tip
2563 | tag: tip
2551 | parent: 0:f7b1eb17ad24
2564 | parent: 0:f7b1eb17ad24
2552 | user: test
2565 | user: test
2553 | date: Thu Jan 01 00:00:00 1970 +0000
2566 | date: Thu Jan 01 00:00:00 1970 +0000
2554 | summary: 2
2567 | summary: 2
2555 |
2568 |
2556 | @ changeset: 2:9bc8ce7f9356
2569 | @ changeset: 2:9bc8ce7f9356
2557 |/ parent: 0:f7b1eb17ad24
2570 |/ parent: 0:f7b1eb17ad24
2558 | user: test
2571 | user: test
2559 | date: Thu Jan 01 00:00:00 1970 +0000
2572 | date: Thu Jan 01 00:00:00 1970 +0000
2560 | summary: 1
2573 | summary: 1
2561 |
2574 |
2562 o changeset: 0:f7b1eb17ad24
2575 o changeset: 0:f7b1eb17ad24
2563 user: test
2576 user: test
2564 date: Thu Jan 01 00:00:00 1970 +0000
2577 date: Thu Jan 01 00:00:00 1970 +0000
2565 summary: 0
2578 summary: 0
2566
2579
2567 $ hg log -f -G b
2580 $ hg log -f -G b
2568 @ changeset: 2:9bc8ce7f9356
2581 @ changeset: 2:9bc8ce7f9356
2569 | parent: 0:f7b1eb17ad24
2582 | parent: 0:f7b1eb17ad24
2570 ~ user: test
2583 ~ user: test
2571 date: Thu Jan 01 00:00:00 1970 +0000
2584 date: Thu Jan 01 00:00:00 1970 +0000
2572 summary: 1
2585 summary: 1
2573
2586
2574 $ hg log -G b
2587 $ hg log -G b
2575 @ changeset: 2:9bc8ce7f9356
2588 @ changeset: 2:9bc8ce7f9356
2576 | parent: 0:f7b1eb17ad24
2589 | parent: 0:f7b1eb17ad24
2577 ~ user: test
2590 ~ user: test
2578 date: Thu Jan 01 00:00:00 1970 +0000
2591 date: Thu Jan 01 00:00:00 1970 +0000
2579 summary: 1
2592 summary: 1
2580
2593
2581 $ cd ..
2594 $ cd ..
2582
2595
2583 Check proper report when the manifest changes but not the file issue4499
2596 Check proper report when the manifest changes but not the file issue4499
2584 ------------------------------------------------------------------------
2597 ------------------------------------------------------------------------
2585
2598
2586 $ hg init issue4499
2599 $ hg init issue4499
2587 $ cd issue4499
2600 $ cd issue4499
2588 $ for f in A B C D F E G H I J K L M N O P Q R S T U; do
2601 $ for f in A B C D F E G H I J K L M N O P Q R S T U; do
2589 > echo 1 > $f;
2602 > echo 1 > $f;
2590 > hg add $f;
2603 > hg add $f;
2591 > done
2604 > done
2592 $ hg commit -m 'A1B1C1'
2605 $ hg commit -m 'A1B1C1'
2593 $ echo 2 > A
2606 $ echo 2 > A
2594 $ echo 2 > B
2607 $ echo 2 > B
2595 $ echo 2 > C
2608 $ echo 2 > C
2596 $ hg commit -m 'A2B2C2'
2609 $ hg commit -m 'A2B2C2'
2597 $ hg up 0
2610 $ hg up 0
2598 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
2611 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
2599 $ echo 3 > A
2612 $ echo 3 > A
2600 $ echo 2 > B
2613 $ echo 2 > B
2601 $ echo 2 > C
2614 $ echo 2 > C
2602 $ hg commit -m 'A3B2C2'
2615 $ hg commit -m 'A3B2C2'
2603 created new head
2616 created new head
2604
2617
2605 $ hg log -G
2618 $ hg log -G
2606 @ changeset: 2:fe5fc3d0eb17
2619 @ changeset: 2:fe5fc3d0eb17
2607 | tag: tip
2620 | tag: tip
2608 | parent: 0:abf4f0e38563
2621 | parent: 0:abf4f0e38563
2609 | user: test
2622 | user: test
2610 | date: Thu Jan 01 00:00:00 1970 +0000
2623 | date: Thu Jan 01 00:00:00 1970 +0000
2611 | summary: A3B2C2
2624 | summary: A3B2C2
2612 |
2625 |
2613 | o changeset: 1:07dcc6b312c0
2626 | o changeset: 1:07dcc6b312c0
2614 |/ user: test
2627 |/ user: test
2615 | date: Thu Jan 01 00:00:00 1970 +0000
2628 | date: Thu Jan 01 00:00:00 1970 +0000
2616 | summary: A2B2C2
2629 | summary: A2B2C2
2617 |
2630 |
2618 o changeset: 0:abf4f0e38563
2631 o changeset: 0:abf4f0e38563
2619 user: test
2632 user: test
2620 date: Thu Jan 01 00:00:00 1970 +0000
2633 date: Thu Jan 01 00:00:00 1970 +0000
2621 summary: A1B1C1
2634 summary: A1B1C1
2622
2635
2623
2636
2624 Log -f on B should reports current changesets
2637 Log -f on B should reports current changesets
2625
2638
2626 $ hg log -fG B
2639 $ hg log -fG B
2627 @ changeset: 2:fe5fc3d0eb17
2640 @ changeset: 2:fe5fc3d0eb17
2628 | tag: tip
2641 | tag: tip
2629 | parent: 0:abf4f0e38563
2642 | parent: 0:abf4f0e38563
2630 | user: test
2643 | user: test
2631 | date: Thu Jan 01 00:00:00 1970 +0000
2644 | date: Thu Jan 01 00:00:00 1970 +0000
2632 | summary: A3B2C2
2645 | summary: A3B2C2
2633 |
2646 |
2634 o changeset: 0:abf4f0e38563
2647 o changeset: 0:abf4f0e38563
2635 user: test
2648 user: test
2636 date: Thu Jan 01 00:00:00 1970 +0000
2649 date: Thu Jan 01 00:00:00 1970 +0000
2637 summary: A1B1C1
2650 summary: A1B1C1
2638
2651
2639 $ cd ..
2652 $ cd ..
2640
2653
2641 --- going to test line wrap fix on using both --stat and -G (issue5800)
2654 --- going to test line wrap fix on using both --stat and -G (issue5800)
2642 $ hg init issue5800
2655 $ hg init issue5800
2643 $ cd issue5800
2656 $ cd issue5800
2644 $ touch a
2657 $ touch a
2645 $ hg ci -Am 'add a'
2658 $ hg ci -Am 'add a'
2646 adding a
2659 adding a
2647 ---- now we are going to add 300 lines to a
2660 ---- now we are going to add 300 lines to a
2648 $ for i in `$TESTDIR/seq.py 1 300`; do echo $i >> a; done
2661 $ for i in `$TESTDIR/seq.py 1 300`; do echo $i >> a; done
2649 $ hg ci -m 'modify a'
2662 $ hg ci -m 'modify a'
2650 $ hg log
2663 $ hg log
2651 changeset: 1:a98683e6a834
2664 changeset: 1:a98683e6a834
2652 tag: tip
2665 tag: tip
2653 user: test
2666 user: test
2654 date: Thu Jan 01 00:00:00 1970 +0000
2667 date: Thu Jan 01 00:00:00 1970 +0000
2655 summary: modify a
2668 summary: modify a
2656
2669
2657 changeset: 0:ac82d8b1f7c4
2670 changeset: 0:ac82d8b1f7c4
2658 user: test
2671 user: test
2659 date: Thu Jan 01 00:00:00 1970 +0000
2672 date: Thu Jan 01 00:00:00 1970 +0000
2660 summary: add a
2673 summary: add a
2661
2674
2662 ---- now visualise the changes we made without template
2675 ---- now visualise the changes we made without template
2663 $ hg log -l1 -r a98683e6a834 --stat -G
2676 $ hg log -l1 -r a98683e6a834 --stat -G
2664 @ changeset: 1:a98683e6a834
2677 @ changeset: 1:a98683e6a834
2665 | tag: tip
2678 | tag: tip
2666 ~ user: test
2679 ~ user: test
2667 date: Thu Jan 01 00:00:00 1970 +0000
2680 date: Thu Jan 01 00:00:00 1970 +0000
2668 summary: modify a
2681 summary: modify a
2669
2682
2670 a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2683 a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2671 1 files changed, 300 insertions(+), 0 deletions(-)
2684 1 files changed, 300 insertions(+), 0 deletions(-)
2672
2685
2673 ---- with template
2686 ---- with template
2674 $ hg log -l1 -r a98683e6a834 --stat -G -T bisect
2687 $ hg log -l1 -r a98683e6a834 --stat -G -T bisect
2675 @ changeset: 1:a98683e6a834
2688 @ changeset: 1:a98683e6a834
2676 | bisect:
2689 | bisect:
2677 ~ tag: tip
2690 ~ tag: tip
2678 user: test
2691 user: test
2679 date: Thu Jan 01 00:00:00 1970 +0000
2692 date: Thu Jan 01 00:00:00 1970 +0000
2680 summary: modify a
2693 summary: modify a
2681
2694
2682 a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2695 a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2683 1 files changed, 300 insertions(+), 0 deletions(-)
2696 1 files changed, 300 insertions(+), 0 deletions(-)
2684
2697
2685 $ hg log -l1 -r a98683e6a834 --stat -G -T changelog
2698 $ hg log -l1 -r a98683e6a834 --stat -G -T changelog
2686 1970-01-01 test <test>
2699 1970-01-01 test <test>
2687
2700
2688 @ * a:
2701 @ * a:
2689 | modify a
2702 | modify a
2690 ~ [a98683e6a834] [tip]
2703 ~ [a98683e6a834] [tip]
2691
2704
2692 a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2705 a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2693 1 files changed, 300 insertions(+), 0 deletions(-)
2706 1 files changed, 300 insertions(+), 0 deletions(-)
2694
2707
2695 $ hg log -l1 -r a98683e6a834 --stat -G -T compact
2708 $ hg log -l1 -r a98683e6a834 --stat -G -T compact
2696 @ 1[tip] a98683e6a834 1970-01-01 00:00 +0000 test
2709 @ 1[tip] a98683e6a834 1970-01-01 00:00 +0000 test
2697 | modify a
2710 | modify a
2698 ~
2711 ~
2699 a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2712 a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2700 1 files changed, 300 insertions(+), 0 deletions(-)
2713 1 files changed, 300 insertions(+), 0 deletions(-)
2701
2714
2702 $ hg log -l1 -r a98683e6a834 --stat -G -T default
2715 $ hg log -l1 -r a98683e6a834 --stat -G -T default
2703 @ changeset: 1:a98683e6a834
2716 @ changeset: 1:a98683e6a834
2704 | tag: tip
2717 | tag: tip
2705 ~ user: test
2718 ~ user: test
2706 date: Thu Jan 01 00:00:00 1970 +0000
2719 date: Thu Jan 01 00:00:00 1970 +0000
2707 summary: modify a
2720 summary: modify a
2708
2721
2709 a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2722 a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2710 1 files changed, 300 insertions(+), 0 deletions(-)
2723 1 files changed, 300 insertions(+), 0 deletions(-)
2711
2724
2712 $ hg log -l1 -r a98683e6a834 --stat -G -T phases
2725 $ hg log -l1 -r a98683e6a834 --stat -G -T phases
2713 @ changeset: 1:a98683e6a834
2726 @ changeset: 1:a98683e6a834
2714 | tag: tip
2727 | tag: tip
2715 ~ phase: draft
2728 ~ phase: draft
2716 user: test
2729 user: test
2717 date: Thu Jan 01 00:00:00 1970 +0000
2730 date: Thu Jan 01 00:00:00 1970 +0000
2718 summary: modify a
2731 summary: modify a
2719
2732
2720 a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2733 a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2721 1 files changed, 300 insertions(+), 0 deletions(-)
2734 1 files changed, 300 insertions(+), 0 deletions(-)
2722
2735
2723 $ hg log -l1 -r a98683e6a834 --stat -G -T show
2736 $ hg log -l1 -r a98683e6a834 --stat -G -T show
2724 @ changeset: 1:a98683e6a834
2737 @ changeset: 1:a98683e6a834
2725 | tag: tip
2738 | tag: tip
2726 ~ user: test
2739 ~ user: test
2727 date: Thu Jan 01 00:00:00 1970 +0000
2740 date: Thu Jan 01 00:00:00 1970 +0000
2728 summary: modify a
2741 summary: modify a
2729
2742
2730 a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2743 a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2731 1 files changed, 300 insertions(+), 0 deletions(-)
2744 1 files changed, 300 insertions(+), 0 deletions(-)
2732
2745
2733 $ hg log -l1 -r a98683e6a834 --stat -G -T status
2746 $ hg log -l1 -r a98683e6a834 --stat -G -T status
2734 @ changeset: 1:a98683e6a834
2747 @ changeset: 1:a98683e6a834
2735 | tag: tip
2748 | tag: tip
2736 ~ user: test
2749 ~ user: test
2737 date: Thu Jan 01 00:00:00 1970 +0000
2750 date: Thu Jan 01 00:00:00 1970 +0000
2738 summary: modify a
2751 summary: modify a
2739 files:
2752 files:
2740 M a
2753 M a
2741
2754
2742 a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2755 a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2743 1 files changed, 300 insertions(+), 0 deletions(-)
2756 1 files changed, 300 insertions(+), 0 deletions(-)
2744
2757
2745 $ hg log -l1 -r a98683e6a834 --stat -G -T xml
2758 $ hg log -l1 -r a98683e6a834 --stat -G -T xml
2746 <?xml version="1.0"?>
2759 <?xml version="1.0"?>
2747 <log>
2760 <log>
2748 @ <logentry revision="1" node="a98683e6a8340830a7683909768b62871e84bc9d">
2761 @ <logentry revision="1" node="a98683e6a8340830a7683909768b62871e84bc9d">
2749 | <tag>tip</tag>
2762 | <tag>tip</tag>
2750 ~ <author email="test">test</author>
2763 ~ <author email="test">test</author>
2751 <date>1970-01-01T00:00:00+00:00</date>
2764 <date>1970-01-01T00:00:00+00:00</date>
2752 <msg xml:space="preserve">modify a</msg>
2765 <msg xml:space="preserve">modify a</msg>
2753 </logentry>
2766 </logentry>
2754 a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2767 a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2755 1 files changed, 300 insertions(+), 0 deletions(-)
2768 1 files changed, 300 insertions(+), 0 deletions(-)
2756
2769
2757 </log>
2770 </log>
2758
2771
2759 $ cd ..
2772 $ cd ..
General Comments 0
You need to be logged in to leave comments. Login now