test-log.t
2971 lines
| 66.8 KiB
| text/troff
|
Tads3Lexer
/ tests / test-log.t
Alexander Plavin
|
r18991 | Log on empty repository: checking consistency | ||
$ hg init empty | ||||
$ cd empty | ||||
$ hg log | ||||
$ hg log -r 1 | ||||
Martin von Zweigbergk
|
r46518 | abort: unknown revision '1' | ||
Martin von Zweigbergk
|
r48928 | [10] | ||
Alexander Plavin
|
r18991 | $ hg log -r -1:0 | ||
Martin von Zweigbergk
|
r46518 | abort: unknown revision '-1' | ||
Martin von Zweigbergk
|
r48928 | [10] | ||
Alexander Plavin
|
r18991 | $ hg log -r 'branch(name)' | ||
Martin von Zweigbergk
|
r46518 | abort: unknown revision 'name' | ||
Martin von Zweigbergk
|
r48928 | [10] | ||
Alexander Plavin
|
r18991 | $ hg log -r null -q | ||
-1:000000000000 | ||||
Denis Laxalde
|
r34456 | $ cd .. | ||
Patrick Mezard
|
r16164 | The g is crafted to have 2 filelog topological heads in a linear | ||
changeset graph | ||||
Nicolas Dumazet
|
r11900 | $ hg init a | ||
$ cd a | ||||
$ echo a > a | ||||
Patrick Mezard
|
r16164 | $ echo f > f | ||
Nicolas Dumazet
|
r11900 | $ hg ci -Ama -d '1 0' | ||
adding a | ||||
Patrick Mezard
|
r16164 | adding f | ||
Nicolas Dumazet
|
r11900 | |||
$ hg cp a b | ||||
Patrick Mezard
|
r16164 | $ hg cp f g | ||
Nicolas Dumazet
|
r11900 | $ hg ci -mb -d '2 0' | ||
$ mkdir dir | ||||
$ hg mv b dir | ||||
Patrick Mezard
|
r16164 | $ echo g >> g | ||
$ echo f >> f | ||||
Nicolas Dumazet
|
r11900 | $ hg ci -mc -d '3 0' | ||
$ hg mv a b | ||||
Patrick Mezard
|
r16164 | $ hg cp -f f g | ||
Nicolas Dumazet
|
r11900 | $ echo a > d | ||
$ hg add d | ||||
$ hg ci -md -d '4 0' | ||||
$ hg mv dir/b e | ||||
$ hg ci -me -d '5 0' | ||||
Matt Harbison
|
r23976 | Make sure largefiles doesn't interfere with logging a regular file | ||
Matt Harbison
|
r24207 | $ hg --debug log a -T '{rev}: {desc}\n' --config extensions.largefiles= | ||
FUJIWARA Katsunori
|
r33209 | The fsmonitor extension is incompatible with the largefiles extension and has been disabled. (fsmonitor !) | ||
Pulkit Goyal
|
r32308 | updated patterns: .hglf/a, a | ||
Matt Harbison
|
r24207 | 0: a | ||
Nicolas Dumazet
|
r11900 | $ hg log a | ||
Patrick Mezard
|
r16164 | changeset: 0:9161b9aeaf16 | ||
Nicolas Dumazet
|
r11900 | user: test | ||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: a | ||||
Matt Harbison
|
r24206 | $ hg log glob:a* | ||
changeset: 3:2ca5ba701980 | ||||
user: test | ||||
date: Thu Jan 01 00:00:04 1970 +0000 | ||||
summary: d | ||||
changeset: 0:9161b9aeaf16 | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: a | ||||
Matt Harbison
|
r24207 | $ hg --debug log glob:a* -T '{rev}: {desc}\n' --config extensions.largefiles= | ||
FUJIWARA Katsunori
|
r33209 | The fsmonitor extension is incompatible with the largefiles extension and has been disabled. (fsmonitor !) | ||
Pulkit Goyal
|
r32308 | updated patterns: glob:.hglf/a*, glob:a* | ||
Matt Harbison
|
r24207 | 3: d | ||
0: a | ||||
Mads Kiilerich
|
r18340 | log on directory | ||
$ hg log dir | ||||
changeset: 4:7e4639b4691b | ||||
tag: tip | ||||
user: test | ||||
date: Thu Jan 01 00:00:05 1970 +0000 | ||||
summary: e | ||||
changeset: 2:f8954cd4dc1f | ||||
user: test | ||||
date: Thu Jan 01 00:00:03 1970 +0000 | ||||
summary: c | ||||
$ hg log somethingthatdoesntexist dir | ||||
changeset: 4:7e4639b4691b | ||||
tag: tip | ||||
user: test | ||||
date: Thu Jan 01 00:00:05 1970 +0000 | ||||
summary: e | ||||
changeset: 2:f8954cd4dc1f | ||||
user: test | ||||
date: Thu Jan 01 00:00:03 1970 +0000 | ||||
summary: c | ||||
Nicolas Dumazet
|
r11900 | |||
Yuya Nishihara
|
r47352 | log empty path (or repo root) of slow path shouldn't crash (issue6478) | ||
$ hg log -ql1 '' inexistent | ||||
4:7e4639b4691b | ||||
$ hg log -ql1 . inexistent | ||||
4:7e4639b4691b | ||||
$ hg log -ql1 "`pwd`" inexistent | ||||
4:7e4639b4691b | ||||
$ hg log -ql1 '' e | ||||
4:7e4639b4691b | ||||
$ hg log -ql1 . e | ||||
4:7e4639b4691b | ||||
$ hg log -ql1 "`pwd`" e | ||||
4:7e4639b4691b | ||||
log -f empty path (or repo root) shouldn't crash | ||||
$ hg log -qfl1 '' inexistent | ||||
abort: cannot follow file not in parent revision: "inexistent" | ||||
[255] | ||||
$ hg log -qfl1 . inexistent | ||||
abort: cannot follow file not in parent revision: "inexistent" | ||||
[255] | ||||
$ hg log -qfl1 "`pwd`" inexistent | ||||
abort: cannot follow file not in parent revision: "inexistent" | ||||
[255] | ||||
$ hg log -qfl1 '' e | ||||
4:7e4639b4691b | ||||
$ hg log -qfl1 . e | ||||
4:7e4639b4691b | ||||
$ hg log -qfl1 "`pwd`" e | ||||
4:7e4639b4691b | ||||
Yuya Nishihara
|
r35677 | -X, with explicit path | ||
$ hg log a -X a | ||||
Durham Goode
|
r21998 | -f, non-existent directory | ||
Nicolas Dumazet
|
r11900 | |||
$ hg log -f dir | ||||
Patrick Mezard
|
r16165 | abort: cannot follow file not in parent revision: "dir" | ||
Matt Mackall
|
r12316 | [255] | ||
Nicolas Dumazet
|
r11900 | |||
Durham Goode
|
r21998 | -f, directory | ||
$ hg up -q 3 | ||||
$ hg log -f dir | ||||
changeset: 2:f8954cd4dc1f | ||||
user: test | ||||
date: Thu Jan 01 00:00:03 1970 +0000 | ||||
summary: c | ||||
-f, directory with --patch | ||||
$ hg log -f dir -p | ||||
changeset: 2:f8954cd4dc1f | ||||
user: test | ||||
date: Thu Jan 01 00:00:03 1970 +0000 | ||||
summary: c | ||||
diff -r d89b0a12d229 -r f8954cd4dc1f dir/b | ||||
--- /dev/null* (glob) | ||||
+++ b/dir/b* (glob) | ||||
@@ -0,0 +1,1 @@ | ||||
+a | ||||
-f, pattern | ||||
$ hg log -f -I 'dir**' -p | ||||
changeset: 2:f8954cd4dc1f | ||||
user: test | ||||
date: Thu Jan 01 00:00:03 1970 +0000 | ||||
summary: c | ||||
diff -r d89b0a12d229 -r f8954cd4dc1f dir/b | ||||
--- /dev/null* (glob) | ||||
+++ b/dir/b* (glob) | ||||
@@ -0,0 +1,1 @@ | ||||
+a | ||||
$ hg up -q 4 | ||||
Iulian Stana
|
r19125 | -f, a wrong style | ||
$ hg log -f -l1 --style something | ||||
abort: style 'something' not found | ||||
Gregory Szorc
|
r31765 | (available styles: bisect, changelog, compact, default, phases, show, status, xml) | ||
Iulian Stana
|
r19125 | [255] | ||
Iulian Stana
|
r19126 | -f, phases style | ||
$ hg log -f -l1 --style phases | ||||
changeset: 4:7e4639b4691b | ||||
tag: tip | ||||
phase: draft | ||||
user: test | ||||
date: Thu Jan 01 00:00:05 1970 +0000 | ||||
summary: e | ||||
Iulian Stana
|
r19125 | |||
Yuya Nishihara
|
r24493 | $ hg log -f -l1 --style phases -q | ||
4:7e4639b4691b | ||||
Nicolas Dumazet
|
r11900 | -f, but no args | ||
$ hg log -f | ||||
Patrick Mezard
|
r16164 | changeset: 4:7e4639b4691b | ||
Nicolas Dumazet
|
r11900 | tag: tip | ||
user: test | ||||
date: Thu Jan 01 00:00:05 1970 +0000 | ||||
summary: e | ||||
Patrick Mezard
|
r16164 | changeset: 3:2ca5ba701980 | ||
Nicolas Dumazet
|
r11900 | user: test | ||
date: Thu Jan 01 00:00:04 1970 +0000 | ||||
summary: d | ||||
Patrick Mezard
|
r16164 | changeset: 2:f8954cd4dc1f | ||
Nicolas Dumazet
|
r11900 | user: test | ||
date: Thu Jan 01 00:00:03 1970 +0000 | ||||
summary: c | ||||
Patrick Mezard
|
r16164 | changeset: 1:d89b0a12d229 | ||
Nicolas Dumazet
|
r11900 | user: test | ||
date: Thu Jan 01 00:00:02 1970 +0000 | ||||
summary: b | ||||
Patrick Mezard
|
r16164 | changeset: 0:9161b9aeaf16 | ||
Nicolas Dumazet
|
r11900 | user: test | ||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: a | ||||
one rename | ||||
Patrick Mezard
|
r16165 | $ hg up -q 2 | ||
Nicolas Dumazet
|
r11900 | $ hg log -vf a | ||
Patrick Mezard
|
r16164 | changeset: 0:9161b9aeaf16 | ||
Nicolas Dumazet
|
r11900 | user: test | ||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
Patrick Mezard
|
r16164 | files: a f | ||
Nicolas Dumazet
|
r11900 | description: | ||
a | ||||
many renames | ||||
Patrick Mezard
|
r16165 | $ hg up -q tip | ||
Nicolas Dumazet
|
r11900 | $ hg log -vf e | ||
Patrick Mezard
|
r16164 | changeset: 4:7e4639b4691b | ||
Nicolas Dumazet
|
r11900 | tag: tip | ||
user: test | ||||
date: Thu Jan 01 00:00:05 1970 +0000 | ||||
files: dir/b e | ||||
description: | ||||
e | ||||
Patrick Mezard
|
r16164 | changeset: 2:f8954cd4dc1f | ||
Nicolas Dumazet
|
r11900 | user: test | ||
date: Thu Jan 01 00:00:03 1970 +0000 | ||||
Patrick Mezard
|
r16164 | files: b dir/b f g | ||
Nicolas Dumazet
|
r11900 | description: | ||
c | ||||
Patrick Mezard
|
r16164 | changeset: 1:d89b0a12d229 | ||
Nicolas Dumazet
|
r11900 | user: test | ||
date: Thu Jan 01 00:00:02 1970 +0000 | ||||
Patrick Mezard
|
r16164 | files: b g | ||
Nicolas Dumazet
|
r11900 | description: | ||
b | ||||
Patrick Mezard
|
r16164 | changeset: 0:9161b9aeaf16 | ||
Nicolas Dumazet
|
r11900 | user: test | ||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
Patrick Mezard
|
r16164 | files: a f | ||
Nicolas Dumazet
|
r11900 | description: | ||
a | ||||
log -pf dir/b | ||||
Patrick Mezard
|
r16165 | $ hg up -q 3 | ||
Nicolas Dumazet
|
r11900 | $ hg log -pf dir/b | ||
Patrick Mezard
|
r16164 | changeset: 2:f8954cd4dc1f | ||
Nicolas Dumazet
|
r11900 | user: test | ||
date: Thu Jan 01 00:00:03 1970 +0000 | ||||
summary: c | ||||
Patrick Mezard
|
r16164 | diff -r d89b0a12d229 -r f8954cd4dc1f dir/b | ||
Nicolas Dumazet
|
r11900 | --- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||
+++ b/dir/b Thu Jan 01 00:00:03 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+a | ||||
Patrick Mezard
|
r16164 | changeset: 1:d89b0a12d229 | ||
Nicolas Dumazet
|
r11900 | user: test | ||
date: Thu Jan 01 00:00:02 1970 +0000 | ||||
summary: b | ||||
Patrick Mezard
|
r16164 | diff -r 9161b9aeaf16 -r d89b0a12d229 b | ||
Nicolas Dumazet
|
r11900 | --- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||
+++ b/b Thu Jan 01 00:00:02 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+a | ||||
Patrick Mezard
|
r16164 | changeset: 0:9161b9aeaf16 | ||
Nicolas Dumazet
|
r11900 | user: test | ||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: a | ||||
Patrick Mezard
|
r16164 | diff -r 000000000000 -r 9161b9aeaf16 a | ||
Nicolas Dumazet
|
r11900 | --- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||
+++ b/a Thu Jan 01 00:00:01 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+a | ||||
Siddharth Agarwal
|
r21876 | log -pf b inside dir | ||
$ hg --cwd=dir log -pf b | ||||
changeset: 2:f8954cd4dc1f | ||||
user: test | ||||
date: Thu Jan 01 00:00:03 1970 +0000 | ||||
summary: c | ||||
diff -r d89b0a12d229 -r f8954cd4dc1f dir/b | ||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/dir/b Thu Jan 01 00:00:03 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+a | ||||
changeset: 1:d89b0a12d229 | ||||
user: test | ||||
date: Thu Jan 01 00:00:02 1970 +0000 | ||||
summary: b | ||||
diff -r 9161b9aeaf16 -r d89b0a12d229 b | ||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/b Thu Jan 01 00:00:02 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+a | ||||
changeset: 0:9161b9aeaf16 | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: a | ||||
diff -r 000000000000 -r 9161b9aeaf16 a | ||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/a Thu Jan 01 00:00:01 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+a | ||||
Yuya Nishihara
|
r21966 | log -pf, but no args | ||
$ hg log -pf | ||||
changeset: 3:2ca5ba701980 | ||||
user: test | ||||
date: Thu Jan 01 00:00:04 1970 +0000 | ||||
summary: d | ||||
diff -r f8954cd4dc1f -r 2ca5ba701980 a | ||||
--- a/a Thu Jan 01 00:00:03 1970 +0000 | ||||
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||||
@@ -1,1 +0,0 @@ | ||||
-a | ||||
diff -r f8954cd4dc1f -r 2ca5ba701980 b | ||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/b Thu Jan 01 00:00:04 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+a | ||||
diff -r f8954cd4dc1f -r 2ca5ba701980 d | ||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/d Thu Jan 01 00:00:04 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+a | ||||
diff -r f8954cd4dc1f -r 2ca5ba701980 g | ||||
--- a/g Thu Jan 01 00:00:03 1970 +0000 | ||||
+++ b/g Thu Jan 01 00:00:04 1970 +0000 | ||||
@@ -1,2 +1,2 @@ | ||||
f | ||||
-g | ||||
+f | ||||
changeset: 2:f8954cd4dc1f | ||||
user: test | ||||
date: Thu Jan 01 00:00:03 1970 +0000 | ||||
summary: c | ||||
diff -r d89b0a12d229 -r f8954cd4dc1f b | ||||
--- a/b Thu Jan 01 00:00:02 1970 +0000 | ||||
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||||
@@ -1,1 +0,0 @@ | ||||
-a | ||||
diff -r d89b0a12d229 -r f8954cd4dc1f dir/b | ||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/dir/b Thu Jan 01 00:00:03 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+a | ||||
diff -r d89b0a12d229 -r f8954cd4dc1f f | ||||
--- a/f Thu Jan 01 00:00:02 1970 +0000 | ||||
+++ b/f Thu Jan 01 00:00:03 1970 +0000 | ||||
@@ -1,1 +1,2 @@ | ||||
f | ||||
+f | ||||
diff -r d89b0a12d229 -r f8954cd4dc1f g | ||||
--- a/g Thu Jan 01 00:00:02 1970 +0000 | ||||
+++ b/g Thu Jan 01 00:00:03 1970 +0000 | ||||
@@ -1,1 +1,2 @@ | ||||
f | ||||
+g | ||||
changeset: 1:d89b0a12d229 | ||||
user: test | ||||
date: Thu Jan 01 00:00:02 1970 +0000 | ||||
summary: b | ||||
diff -r 9161b9aeaf16 -r d89b0a12d229 b | ||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/b Thu Jan 01 00:00:02 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+a | ||||
diff -r 9161b9aeaf16 -r d89b0a12d229 g | ||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/g Thu Jan 01 00:00:02 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+f | ||||
changeset: 0:9161b9aeaf16 | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: a | ||||
diff -r 000000000000 -r 9161b9aeaf16 a | ||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/a Thu Jan 01 00:00:01 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+a | ||||
diff -r 000000000000 -r 9161b9aeaf16 f | ||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/f Thu Jan 01 00:00:01 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+f | ||||
Nicolas Dumazet
|
r11900 | log -vf dir/b | ||
$ hg log -vf dir/b | ||||
Patrick Mezard
|
r16164 | changeset: 2:f8954cd4dc1f | ||
Nicolas Dumazet
|
r11900 | user: test | ||
date: Thu Jan 01 00:00:03 1970 +0000 | ||||
Patrick Mezard
|
r16164 | files: b dir/b f g | ||
Nicolas Dumazet
|
r11900 | description: | ||
c | ||||
Patrick Mezard
|
r16164 | changeset: 1:d89b0a12d229 | ||
Nicolas Dumazet
|
r11900 | user: test | ||
date: Thu Jan 01 00:00:02 1970 +0000 | ||||
Patrick Mezard
|
r16164 | files: b g | ||
Nicolas Dumazet
|
r11900 | description: | ||
b | ||||
Patrick Mezard
|
r16164 | changeset: 0:9161b9aeaf16 | ||
Nicolas Dumazet
|
r11900 | user: test | ||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
Patrick Mezard
|
r16164 | files: a f | ||
Nicolas Dumazet
|
r11900 | description: | ||
a | ||||
Martin von Zweigbergk
|
r46350 | Respects ui.logtemplate and command-templates.log configs (the latter takes | ||
precedence) | ||||
$ hg log -r 0 --config ui.logtemplate="foo {rev}\n" | ||||
foo 0 | ||||
$ hg log -r 0 --config command-templates.log="bar {rev}\n" | ||||
bar 0 | ||||
$ hg log -r 0 --config ui.logtemplate="foo {rev}\n" \ | ||||
> --config command-templates.log="bar {rev}\n" | ||||
bar 0 | ||||
Nicolas Dumazet
|
r11900 | |||
Patrick Mezard
|
r16165 | -f and multiple filelog heads | ||
$ hg up -q 2 | ||||
$ hg log -f g --template '{rev}\n' | ||||
2 | ||||
1 | ||||
0 | ||||
$ hg up -q tip | ||||
$ hg log -f g --template '{rev}\n' | ||||
3 | ||||
2 | ||||
0 | ||||
Yuya Nishihara
|
r35705 | follow files from the specified revisions (issue4959) | ||
$ hg log -G -T '{rev} {files},{file_copies % " {source}->{name}"}\n' | ||||
@ 4 dir/b e, dir/b->e | ||||
| | ||||
o 3 a b d g, a->b f->g | ||||
| | ||||
o 2 b dir/b f g, b->dir/b | ||||
| | ||||
o 1 b g, a->b f->g | ||||
| | ||||
o 0 a f, | ||||
$ hg log -T '{rev}\n' -fr 4 e | ||||
4 | ||||
2 | ||||
1 | ||||
0 | ||||
$ hg log -T '{rev}\n' -fr 2 g | ||||
2 | ||||
1 | ||||
0 | ||||
$ hg log -T '{rev}\n' -fr '2+3' g | ||||
3 | ||||
2 | ||||
1 | ||||
0 | ||||
follow files from the specified revisions with glob patterns (issue5053) | ||||
(BROKEN: should follow copies from e@4) | ||||
$ hg log -T '{rev}\n' -fr4 e -X '[abcdfg]' | ||||
4 | ||||
2 (false !) | ||||
1 (false !) | ||||
0 (false !) | ||||
follow files from the specified revisions with missing patterns | ||||
$ hg log -T '{rev}\n' -fr4 e x | ||||
Yuya Nishihara
|
r46045 | abort: cannot follow file not in any of the specified revisions: "x" | ||
[255] | ||||
follow files from the specified revisions with directory patterns | ||||
(BROKEN: should follow copies from dir/b@2) | ||||
$ hg log -T '{rev}\n' -fr2 dir/b dir | ||||
2 | ||||
Yuya Nishihara
|
r35705 | 1 (false !) | ||
0 (false !) | ||||
Yuya Nishihara
|
r46045 | follow files from multiple revisions, but the pattern is missing in | ||
one of the specified revisions | ||||
$ hg log -T '{rev}\n' -fr'2+4' dir/b e | ||||
e: no such file in rev f8954cd4dc1f | ||||
dir/b: no such file in rev 7e4639b4691b | ||||
4 | ||||
2 | ||||
1 | ||||
0 | ||||
follow files from multiple revisions, and the pattern matches a file in | ||||
one revision but matches a directory in another: | ||||
(BROKEN: should follow copies from dir/b@2 and dir/b/g@5) | ||||
(BROKEN: the revision 4 should not be included since dir/b/g@5 is unchanged) | ||||
$ mkdir -p dir/b | ||||
$ hg mv g dir/b | ||||
$ hg ci -m 'make dir/b a directory' | ||||
$ hg log -T '{rev}\n' -fr'2+5' dir/b | ||||
5 | ||||
4 | ||||
3 (false !) | ||||
2 | ||||
1 (false !) | ||||
0 (false !) | ||||
$ hg --config extensions.strip= strip -r. --no-backup | ||||
1 files updated, 0 files merged, 1 files removed, 0 files unresolved | ||||
Yuya Nishihara
|
r35705 | follow files from the specified revisions across copies with -p/--patch | ||
$ hg log -T '== rev: {rev},{file_copies % " {source}->{name}"} ==\n' -fpr 4 e g | ||||
== rev: 4, dir/b->e == | ||||
diff -r 2ca5ba701980 -r 7e4639b4691b e | ||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/e Thu Jan 01 00:00:05 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+a | ||||
== rev: 3, a->b f->g == | ||||
diff -r f8954cd4dc1f -r 2ca5ba701980 g | ||||
--- a/g Thu Jan 01 00:00:03 1970 +0000 | ||||
+++ b/g Thu Jan 01 00:00:04 1970 +0000 | ||||
@@ -1,2 +1,2 @@ | ||||
f | ||||
-g | ||||
+f | ||||
== rev: 2, b->dir/b == | ||||
diff -r d89b0a12d229 -r f8954cd4dc1f dir/b | ||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/dir/b Thu Jan 01 00:00:03 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+a | ||||
diff -r d89b0a12d229 -r f8954cd4dc1f f | ||||
--- a/f Thu Jan 01 00:00:02 1970 +0000 | ||||
+++ b/f Thu Jan 01 00:00:03 1970 +0000 | ||||
@@ -1,1 +1,2 @@ | ||||
f | ||||
+f | ||||
== rev: 1, a->b f->g == | ||||
diff -r 9161b9aeaf16 -r d89b0a12d229 b | ||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/b Thu Jan 01 00:00:02 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+a | ||||
== rev: 0, == | ||||
diff -r 000000000000 -r 9161b9aeaf16 a | ||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/a Thu Jan 01 00:00:01 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+a | ||||
diff -r 000000000000 -r 9161b9aeaf16 f | ||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/f Thu Jan 01 00:00:01 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+f | ||||
Patrick Mezard
|
r16165 | |||
Nicolas Dumazet
|
r11900 | log copies with --copies | ||
$ hg log -vC --template '{rev} {file_copies}\n' | ||||
4 e (dir/b) | ||||
Patrick Mezard
|
r16164 | 3 b (a)g (f) | ||
Nicolas Dumazet
|
r11900 | 2 dir/b (b) | ||
Patrick Mezard
|
r16164 | 1 b (a)g (f) | ||
Nicolas Dumazet
|
r11900 | 0 | ||
log copies switch without --copies, with old filecopy template | ||||
$ hg log -v --template '{rev} {file_copies_switch%filecopy}\n' | ||||
4 | ||||
3 | ||||
2 | ||||
1 | ||||
0 | ||||
log copies switch with --copies | ||||
$ hg log -vC --template '{rev} {file_copies_switch}\n' | ||||
4 e (dir/b) | ||||
Patrick Mezard
|
r16164 | 3 b (a)g (f) | ||
Nicolas Dumazet
|
r11900 | 2 dir/b (b) | ||
Patrick Mezard
|
r16164 | 1 b (a)g (f) | ||
Nicolas Dumazet
|
r11900 | 0 | ||
log copies with hardcoded style and with --style=default | ||||
$ hg log -vC -r4 | ||||
Patrick Mezard
|
r16164 | changeset: 4:7e4639b4691b | ||
Nicolas Dumazet
|
r11900 | tag: tip | ||
user: test | ||||
date: Thu Jan 01 00:00:05 1970 +0000 | ||||
files: dir/b e | ||||
copies: e (dir/b) | ||||
description: | ||||
e | ||||
$ hg log -vC -r4 --style=default | ||||
Patrick Mezard
|
r16164 | changeset: 4:7e4639b4691b | ||
Nicolas Dumazet
|
r11900 | tag: tip | ||
user: test | ||||
date: Thu Jan 01 00:00:05 1970 +0000 | ||||
files: dir/b e | ||||
copies: e (dir/b) | ||||
description: | ||||
e | ||||
Augie Fackler
|
r24013 | $ hg log -vC -r4 -Tjson | ||
[ | ||||
{ | ||||
Yuya Nishihara
|
r37790 | "bookmarks": [], | ||
Augie Fackler
|
r24013 | "branch": "default", | ||
Yuya Nishihara
|
r37790 | "copies": {"e": "dir/b"}, | ||
Augie Fackler
|
r24013 | "date": [5, 0], | ||
"desc": "e", | ||||
Yuya Nishihara
|
r37790 | "files": ["dir/b", "e"], | ||
"node": "7e4639b4691b9f84b81036a8d4fb218ce3c5e3a3", | ||||
Augie Fackler
|
r24013 | "parents": ["2ca5ba7019804f1f597249caddf22a64d34df0ba"], | ||
Yuya Nishihara
|
r37790 | "phase": "draft", | ||
"rev": 4, | ||||
"tags": ["tip"], | ||||
"user": "test" | ||||
Augie Fackler
|
r24013 | } | ||
] | ||||
Nicolas Dumazet
|
r11900 | |||
log copies, non-linear manifest | ||||
$ hg up -C 3 | ||||
1 files updated, 0 files merged, 1 files removed, 0 files unresolved | ||||
$ hg mv dir/b e | ||||
$ echo foo > foo | ||||
$ hg ci -Ame2 -d '6 0' | ||||
adding foo | ||||
created new head | ||||
$ hg log -v --template '{rev} {file_copies}\n' -r 5 | ||||
5 e (dir/b) | ||||
log copies, execute bit set | ||||
Adrian Buehlmann
|
r16887 | #if execbit | ||
Nicolas Dumazet
|
r11900 | $ chmod +x e | ||
$ hg ci -me3 -d '7 0' | ||||
$ hg log -v --template '{rev} {file_copies}\n' -r 6 | ||||
6 | ||||
Adrian Buehlmann
|
r16887 | #endif | ||
Nicolas Dumazet
|
r11900 | |||
Yuya Nishihara
|
r37794 | log copies, empty set | ||
$ hg log --copies -r '0 and not 0' | ||||
Nicolas Dumazet
|
r11900 | |||
log -p d | ||||
$ hg log -pv d | ||||
Patrick Mezard
|
r16164 | changeset: 3:2ca5ba701980 | ||
Nicolas Dumazet
|
r11900 | user: test | ||
date: Thu Jan 01 00:00:04 1970 +0000 | ||||
Patrick Mezard
|
r16164 | files: a b d g | ||
Nicolas Dumazet
|
r11900 | description: | ||
d | ||||
Patrick Mezard
|
r16164 | diff -r f8954cd4dc1f -r 2ca5ba701980 d | ||
Nicolas Dumazet
|
r11900 | --- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||
+++ b/d Thu Jan 01 00:00:04 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+a | ||||
log --removed file | ||||
$ hg log --removed -v a | ||||
Patrick Mezard
|
r16164 | changeset: 3:2ca5ba701980 | ||
Nicolas Dumazet
|
r11900 | user: test | ||
date: Thu Jan 01 00:00:04 1970 +0000 | ||||
Patrick Mezard
|
r16164 | files: a b d g | ||
Nicolas Dumazet
|
r11900 | description: | ||
d | ||||
Patrick Mezard
|
r16164 | changeset: 0:9161b9aeaf16 | ||
Nicolas Dumazet
|
r11900 | user: test | ||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
Patrick Mezard
|
r16164 | files: a f | ||
Nicolas Dumazet
|
r11900 | description: | ||
a | ||||
log --removed revrange file | ||||
$ hg log --removed -v -r0:2 a | ||||
Patrick Mezard
|
r16164 | changeset: 0:9161b9aeaf16 | ||
Nicolas Dumazet
|
r11900 | user: test | ||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
Patrick Mezard
|
r16164 | files: a f | ||
Nicolas Dumazet
|
r11900 | description: | ||
a | ||||
Mads Kiilerich
|
r16912 | $ cd .. | ||
Nicolas Dumazet
|
r11900 | |||
log --follow tests | ||||
Mads Kiilerich
|
r16912 | $ hg init follow | ||
$ cd follow | ||||
Nicolas Dumazet
|
r11900 | |||
$ echo base > base | ||||
$ hg ci -Ambase -d '1 0' | ||||
adding base | ||||
$ echo r1 >> base | ||||
$ hg ci -Amr1 -d '1 0' | ||||
$ echo r2 >> base | ||||
$ hg ci -Amr2 -d '1 0' | ||||
$ hg up -C 1 | ||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
$ echo b1 > b1 | ||||
liscju
|
r26102 | |||
log -r "follow('set:clean()')" | ||||
$ hg log -r "follow('set:clean()')" | ||||
changeset: 0:67e992f2c4f3 | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: base | ||||
changeset: 1:3d5bf5654eda | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: r1 | ||||
Nicolas Dumazet
|
r11900 | $ hg ci -Amb1 -d '1 0' | ||
adding b1 | ||||
created new head | ||||
log -f | ||||
$ hg log -f | ||||
changeset: 3:e62f78d544b4 | ||||
tag: tip | ||||
parent: 1:3d5bf5654eda | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: b1 | ||||
changeset: 1:3d5bf5654eda | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: r1 | ||||
changeset: 0:67e992f2c4f3 | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: base | ||||
liscju
|
r26102 | log -r follow('glob:b*') | ||
Nicolas Dumazet
|
r11900 | |||
liscju
|
r26102 | $ hg log -r "follow('glob:b*')" | ||
changeset: 0:67e992f2c4f3 | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: base | ||||
changeset: 1:3d5bf5654eda | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: r1 | ||||
changeset: 3:e62f78d544b4 | ||||
tag: tip | ||||
parent: 1:3d5bf5654eda | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: b1 | ||||
Durham Goode
|
r24189 | log -f -r '1 + 4' | ||
Nicolas Dumazet
|
r11900 | |||
$ hg up -C 0 | ||||
1 files updated, 0 files merged, 1 files removed, 0 files unresolved | ||||
$ echo b2 > b2 | ||||
$ hg ci -Amb2 -d '1 0' | ||||
adding b2 | ||||
created new head | ||||
Durham Goode
|
r24189 | $ hg log -f -r '1 + 4' | ||
changeset: 4:ddb82e70d1a1 | ||||
tag: tip | ||||
parent: 0:67e992f2c4f3 | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: b2 | ||||
Nicolas Dumazet
|
r11900 | changeset: 1:3d5bf5654eda | ||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: r1 | ||||
Durham Goode
|
r24189 | changeset: 0:67e992f2c4f3 | ||
Nicolas Dumazet
|
r11900 | user: test | ||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
Durham Goode
|
r24189 | summary: base | ||
Nicolas Dumazet
|
r11900 | |||
Yuya Nishihara
|
r35702 | |||
log -fr with aliases: 'A' should be expanded, but 'reverse()' should have no | ||||
effect | ||||
$ hg log --config 'revsetalias.reverse(x)=x' --config 'revsetalias.A=1+4' -qfrA | ||||
4:ddb82e70d1a1 | ||||
1:3d5bf5654eda | ||||
0:67e992f2c4f3 | ||||
liscju
|
r26102 | log -r "follow('set:grep(b2)')" | ||
$ hg log -r "follow('set:grep(b2)')" | ||||
changeset: 4:ddb82e70d1a1 | ||||
tag: tip | ||||
parent: 0:67e992f2c4f3 | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: b2 | ||||
Gábor Stefanik
|
r29814 | log -r "follow('set:grep(b2)', 4)" | ||
$ hg up -qC 0 | ||||
$ hg log -r "follow('set:grep(b2)', 4)" | ||||
changeset: 4:ddb82e70d1a1 | ||||
tag: tip | ||||
parent: 0:67e992f2c4f3 | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: b2 | ||||
Yuya Nishihara
|
r35299 | |||
follow files starting from multiple revisions: | ||||
Yuya Nishihara
|
r35300 | $ hg log -T '{rev}: {files}\n' -r "follow('glob:b?', startrev=2+3+4)" | ||
Yuya Nishihara
|
r35299 | 3: b1 | ||
4: b2 | ||||
follow files starting from empty revision: | ||||
Yuya Nishihara
|
r35300 | $ hg log -T '{rev}: {files}\n' -r "follow('glob:*', startrev=.-.)" | ||
Yuya Nishihara
|
r35299 | |||
Yuya Nishihara
|
r35300 | follow starting from revisions: | ||
$ hg log -Gq -r "follow(startrev=2+4)" | ||||
Yuya Nishihara
|
r35301 | o 4:ddb82e70d1a1 | ||
| | ||||
| o 2:60c670bf5b30 | ||||
| | | ||||
| o 1:3d5bf5654eda | ||||
|/ | ||||
@ 0:67e992f2c4f3 | ||||
follow the current revision: | ||||
$ hg log -Gq -r "follow()" | ||||
@ 0:67e992f2c4f3 | ||||
Yuya Nishihara
|
r35300 | |||
Gábor Stefanik
|
r29814 | $ hg up -qC 4 | ||
Yuya Nishihara
|
r23956 | log -f -r null | ||
$ hg log -f -r null | ||||
changeset: -1:000000000000 | ||||
user: | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
$ hg log -f -r null -G | ||||
o changeset: -1:000000000000 | ||||
user: | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
Yuya Nishihara
|
r24064 | log -f with null parent | ||
$ hg up -C null | ||||
0 files updated, 0 files merged, 2 files removed, 0 files unresolved | ||||
$ hg log -f | ||||
Nicolas Dumazet
|
r11900 | log -r . with two parents | ||
$ hg up -C 3 | ||||
Yuya Nishihara
|
r24064 | 2 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||
Nicolas Dumazet
|
r11900 | $ hg merge tip | ||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
(branch merge, don't forget to commit) | ||||
$ hg log -r . | ||||
changeset: 3:e62f78d544b4 | ||||
parent: 1:3d5bf5654eda | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: b1 | ||||
log -r . with one parent | ||||
$ hg ci -mm12 -d '1 0' | ||||
$ hg log -r . | ||||
changeset: 5:302e9dd6890d | ||||
tag: tip | ||||
parent: 3:e62f78d544b4 | ||||
parent: 4:ddb82e70d1a1 | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: m12 | ||||
$ echo postm >> b1 | ||||
$ hg ci -Amb1.1 -d'1 0' | ||||
log --follow-first | ||||
$ hg log --follow-first | ||||
changeset: 6:2404bbcab562 | ||||
tag: tip | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: b1.1 | ||||
changeset: 5:302e9dd6890d | ||||
parent: 3:e62f78d544b4 | ||||
parent: 4:ddb82e70d1a1 | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: m12 | ||||
changeset: 3:e62f78d544b4 | ||||
parent: 1:3d5bf5654eda | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: b1 | ||||
changeset: 1:3d5bf5654eda | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: r1 | ||||
changeset: 0:67e992f2c4f3 | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: base | ||||
log -P 2 | ||||
$ hg log -P 2 | ||||
changeset: 6:2404bbcab562 | ||||
tag: tip | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: b1.1 | ||||
changeset: 5:302e9dd6890d | ||||
parent: 3:e62f78d544b4 | ||||
parent: 4:ddb82e70d1a1 | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: m12 | ||||
changeset: 4:ddb82e70d1a1 | ||||
parent: 0:67e992f2c4f3 | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: b2 | ||||
changeset: 3:e62f78d544b4 | ||||
parent: 1:3d5bf5654eda | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: b1 | ||||
log -r tip -p --git | ||||
$ hg log -r tip -p --git | ||||
changeset: 6:2404bbcab562 | ||||
tag: tip | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: b1.1 | ||||
diff --git a/b1 b/b1 | ||||
--- a/b1 | ||||
+++ b/b1 | ||||
@@ -1,1 +1,2 @@ | ||||
b1 | ||||
+postm | ||||
log -r "" | ||||
$ hg log -r '' | ||||
hg: parse error: empty query | ||||
Martin von Zweigbergk
|
r46507 | [10] | ||
Nicolas Dumazet
|
r11900 | |||
log -r <some unknown node id> | ||||
$ hg log -r 1000000000000000000000000000000000000000 | ||||
Martin von Zweigbergk
|
r46518 | abort: unknown revision '1000000000000000000000000000000000000000' | ||
Martin von Zweigbergk
|
r48928 | [10] | ||
Nicolas Dumazet
|
r11900 | |||
log -k r1 | ||||
$ hg log -k r1 | ||||
changeset: 1:3d5bf5654eda | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: r1 | ||||
log -p -l2 --color=always | ||||
$ hg --config extensions.color= --config color.mode=ansi \ | ||||
> log -p -l2 --color=always | ||||
Mads Kiilerich
|
r12942 | \x1b[0;33mchangeset: 6:2404bbcab562\x1b[0m (esc) | ||
Nicolas Dumazet
|
r11900 | tag: tip | ||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: b1.1 | ||||
Mads Kiilerich
|
r12942 | \x1b[0;1mdiff -r 302e9dd6890d -r 2404bbcab562 b1\x1b[0m (esc) | ||
\x1b[0;31;1m--- a/b1 Thu Jan 01 00:00:01 1970 +0000\x1b[0m (esc) | ||||
\x1b[0;32;1m+++ b/b1 Thu Jan 01 00:00:01 1970 +0000\x1b[0m (esc) | ||||
\x1b[0;35m@@ -1,1 +1,2 @@\x1b[0m (esc) | ||||
Nicolas Dumazet
|
r11900 | b1 | ||
Mads Kiilerich
|
r12942 | \x1b[0;32m+postm\x1b[0m (esc) | ||
Nicolas Dumazet
|
r11900 | |||
Mads Kiilerich
|
r12942 | \x1b[0;33mchangeset: 5:302e9dd6890d\x1b[0m (esc) | ||
Nicolas Dumazet
|
r11900 | parent: 3:e62f78d544b4 | ||
parent: 4:ddb82e70d1a1 | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: m12 | ||||
Mads Kiilerich
|
r12942 | \x1b[0;1mdiff -r e62f78d544b4 -r 302e9dd6890d b2\x1b[0m (esc) | ||
\x1b[0;31;1m--- /dev/null Thu Jan 01 00:00:00 1970 +0000\x1b[0m (esc) | ||||
\x1b[0;32;1m+++ b/b2 Thu Jan 01 00:00:01 1970 +0000\x1b[0m (esc) | ||||
\x1b[0;35m@@ -0,0 +1,1 @@\x1b[0m (esc) | ||||
\x1b[0;32m+b2\x1b[0m (esc) | ||||
Nicolas Dumazet
|
r11900 | |||
log -r tip --stat | ||||
$ hg log -r tip --stat | ||||
changeset: 6:2404bbcab562 | ||||
tag: tip | ||||
user: test | ||||
date: Thu Jan 01 00:00:01 1970 +0000 | ||||
summary: b1.1 | ||||
b1 | 1 + | ||||
1 files changed, 1 insertions(+), 0 deletions(-) | ||||
$ cd .. | ||||
Yuya Nishihara
|
r30016 | log --follow --patch FILE in repository where linkrev isn't trustworthy | ||
Martin von Zweigbergk
|
r42383 | (issue5376, issue6124) | ||
Yuya Nishihara
|
r30016 | |||
$ hg init follow-dup | ||||
$ cd follow-dup | ||||
$ cat <<EOF >> .hg/hgrc | ||||
Martin von Zweigbergk
|
r46350 | > [command-templates] | ||
> log = '=== {rev}: {desc}\n' | ||||
Yuya Nishihara
|
r30016 | > [diff] | ||
> nodates = True | ||||
> EOF | ||||
$ echo 0 >> a | ||||
$ hg ci -qAm 'a0' | ||||
$ echo 1 >> a | ||||
$ hg ci -m 'a1' | ||||
$ hg up -q 0 | ||||
$ echo 1 >> a | ||||
$ touch b | ||||
$ hg ci -qAm 'a1 with b' | ||||
$ echo 3 >> a | ||||
$ hg ci -m 'a3' | ||||
fctx.rev() == 2, but fctx.linkrev() == 1 | ||||
$ hg log -pf a | ||||
=== 3: a3 | ||||
diff -r 4ea02ba94d66 -r e7a6331a34f0 a | ||||
--- a/a | ||||
+++ b/a | ||||
@@ -1,2 +1,3 @@ | ||||
0 | ||||
1 | ||||
+3 | ||||
=== 2: a1 with b | ||||
diff -r 49b5e81287e2 -r 4ea02ba94d66 a | ||||
--- a/a | ||||
+++ b/a | ||||
@@ -1,1 +1,2 @@ | ||||
0 | ||||
+1 | ||||
=== 0: a0 | ||||
diff -r 000000000000 -r 49b5e81287e2 a | ||||
--- /dev/null | ||||
+++ b/a | ||||
@@ -0,0 +1,1 @@ | ||||
+0 | ||||
Martin von Zweigbergk
|
r42383 | $ hg log -pr . a | ||
=== 3: a3 | ||||
diff -r 4ea02ba94d66 -r e7a6331a34f0 a | ||||
--- a/a | ||||
+++ b/a | ||||
@@ -1,2 +1,3 @@ | ||||
0 | ||||
1 | ||||
+3 | ||||
Yuya Nishihara
|
r30016 | |||
fctx.introrev() == 2, but fctx.linkrev() == 1 | ||||
$ hg up -q 2 | ||||
$ hg log -pf a | ||||
=== 2: a1 with b | ||||
diff -r 49b5e81287e2 -r 4ea02ba94d66 a | ||||
--- a/a | ||||
+++ b/a | ||||
@@ -1,1 +1,2 @@ | ||||
0 | ||||
+1 | ||||
=== 0: a0 | ||||
diff -r 000000000000 -r 49b5e81287e2 a | ||||
--- /dev/null | ||||
+++ b/a | ||||
@@ -0,0 +1,1 @@ | ||||
+0 | ||||
Martin von Zweigbergk
|
r42383 | BROKEN: should show the same diff as for rev 2 above | ||
$ hg log -pr . a | ||||
Yuya Nishihara
|
r30016 | $ cd .. | ||
Yuya Nishihara
|
r35270 | Multiple copy sources of a file: | ||
$ hg init follow-multi | ||||
$ cd follow-multi | ||||
$ echo 0 >> a | ||||
$ hg ci -qAm 'a' | ||||
$ hg cp a b | ||||
$ hg ci -m 'a->b' | ||||
$ echo 2 >> a | ||||
$ hg ci -m 'a' | ||||
$ echo 3 >> b | ||||
$ hg ci -m 'b' | ||||
$ echo 4 >> a | ||||
$ echo 4 >> b | ||||
$ hg ci -m 'a,b' | ||||
$ echo 5 >> a | ||||
$ hg ci -m 'a0' | ||||
$ echo 6 >> b | ||||
$ hg ci -m 'b0' | ||||
$ hg up -q 4 | ||||
$ echo 7 >> b | ||||
$ hg ci -m 'b1' | ||||
created new head | ||||
$ echo 8 >> a | ||||
$ hg ci -m 'a1' | ||||
$ hg rm a | ||||
$ hg mv b a | ||||
$ hg ci -m 'b1->a1' | ||||
$ hg merge -qt :local | ||||
$ hg ci -m '(a0,b1->a1)->a' | ||||
$ hg log -GT '{rev}: {desc}\n' | ||||
@ 10: (a0,b1->a1)->a | ||||
|\ | ||||
| o 9: b1->a1 | ||||
| | | ||||
| o 8: a1 | ||||
| | | ||||
| o 7: b1 | ||||
| | | ||||
o | 6: b0 | ||||
| | | ||||
o | 5: a0 | ||||
|/ | ||||
o 4: a,b | ||||
| | ||||
o 3: b | ||||
| | ||||
o 2: a | ||||
| | ||||
o 1: a->b | ||||
| | ||||
o 0: a | ||||
since file 'a' has multiple copy sources at the revision 4, ancestors can't | ||||
be indexed solely by fctx.linkrev(). | ||||
$ hg log -T '{rev}: {desc}\n' -f a | ||||
10: (a0,b1->a1)->a | ||||
9: b1->a1 | ||||
7: b1 | ||||
5: a0 | ||||
4: a,b | ||||
3: b | ||||
2: a | ||||
1: a->b | ||||
0: a | ||||
$ cd .. | ||||
Yuya Nishihara
|
r28253 | Test that log should respect the order of -rREV even if multiple OR conditions | ||
are specified (issue5100): | ||||
$ hg init revorder | ||||
$ cd revorder | ||||
$ hg branch -q b0 | ||||
$ echo 0 >> f0 | ||||
$ hg ci -qAm k0 -u u0 | ||||
$ hg branch -q b1 | ||||
$ echo 1 >> f1 | ||||
$ hg ci -qAm k1 -u u1 | ||||
$ hg branch -q b2 | ||||
$ echo 2 >> f2 | ||||
$ hg ci -qAm k2 -u u2 | ||||
$ hg update -q b2 | ||||
$ echo 3 >> f2 | ||||
$ hg ci -qAm k2 -u u2 | ||||
$ hg update -q b1 | ||||
$ echo 4 >> f1 | ||||
$ hg ci -qAm k1 -u u1 | ||||
$ hg update -q b0 | ||||
$ echo 5 >> f0 | ||||
$ hg ci -qAm k0 -u u0 | ||||
summary of revisions: | ||||
$ hg log -G -T '{rev} {branch} {author} {desc} {files}\n' | ||||
@ 5 b0 u0 k0 f0 | ||||
| | ||||
| o 4 b1 u1 k1 f1 | ||||
| | | ||||
| | o 3 b2 u2 k2 f2 | ||||
| | | | ||||
| | o 2 b2 u2 k2 f2 | ||||
| |/ | ||||
| o 1 b1 u1 k1 f1 | ||||
|/ | ||||
o 0 b0 u0 k0 f0 | ||||
log -b BRANCH in ascending order: | ||||
$ hg log -r0:tip -T '{rev} {branch}\n' -b b0 -b b1 | ||||
0 b0 | ||||
1 b1 | ||||
4 b1 | ||||
5 b0 | ||||
$ hg log -r0:tip -T '{rev} {branch}\n' -b b1 -b b0 | ||||
0 b0 | ||||
1 b1 | ||||
4 b1 | ||||
5 b0 | ||||
log --only-branch BRANCH in descending order: | ||||
$ hg log -rtip:0 -T '{rev} {branch}\n' --only-branch b1 --only-branch b2 | ||||
4 b1 | ||||
3 b2 | ||||
2 b2 | ||||
1 b1 | ||||
$ hg log -rtip:0 -T '{rev} {branch}\n' --only-branch b2 --only-branch b1 | ||||
4 b1 | ||||
3 b2 | ||||
2 b2 | ||||
1 b1 | ||||
log -u USER in ascending order, against compound set: | ||||
$ hg log -r'::head()' -T '{rev} {author}\n' -u u0 -u u2 | ||||
0 u0 | ||||
2 u2 | ||||
3 u2 | ||||
5 u0 | ||||
$ hg log -r'::head()' -T '{rev} {author}\n' -u u2 -u u0 | ||||
0 u0 | ||||
2 u2 | ||||
3 u2 | ||||
5 u0 | ||||
log -k TEXT in descending order, against compound set: | ||||
$ hg log -r'5 + reverse(::3)' -T '{rev} {desc}\n' -k k0 -k k1 -k k2 | ||||
5 k0 | ||||
3 k2 | ||||
2 k2 | ||||
1 k1 | ||||
0 k0 | ||||
$ hg log -r'5 + reverse(::3)' -T '{rev} {desc}\n' -k k2 -k k1 -k k0 | ||||
5 k0 | ||||
3 k2 | ||||
2 k2 | ||||
1 k1 | ||||
0 k0 | ||||
Yuya Nishihara
|
r46657 | log -b/-u/-k shouldn't accept string-matcher syntax: | ||
$ hg log -b 're:.*' | ||||
abort: unknown revision 're:.*' | ||||
Martin von Zweigbergk
|
r49191 | [10] | ||
Yuya Nishihara
|
r46657 | $ hg log -k 're:.*' | ||
$ hg log -u 're:.*' | ||||
Yuya Nishihara
|
r28253 | log FILE in ascending order, against dagrange: | ||
$ hg log -r1:: -T '{rev} {files}\n' f1 f2 | ||||
1 f1 | ||||
2 f2 | ||||
3 f2 | ||||
4 f1 | ||||
$ hg log -r1:: -T '{rev} {files}\n' f2 f1 | ||||
1 f1 | ||||
2 f2 | ||||
3 f2 | ||||
4 f1 | ||||
$ cd .. | ||||
Mads Kiilerich
|
r16912 | |||
User | ||||
Nicolas Dumazet
|
r11900 | $ hg init usertest | ||
$ cd usertest | ||||
$ echo a > a | ||||
$ hg ci -A -m "a" -u "User One <user1@example.org>" | ||||
adding a | ||||
$ echo b > b | ||||
$ hg ci -A -m "b" -u "User Two <user2@example.org>" | ||||
adding b | ||||
$ hg log -u "User One <user1@example.org>" | ||||
changeset: 0:29a4c94f1924 | ||||
user: User One <user1@example.org> | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: a | ||||
$ hg log -u "user1" -u "user2" | ||||
changeset: 1:e834b5e69c0e | ||||
tag: tip | ||||
user: User Two <user2@example.org> | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: b | ||||
changeset: 0:29a4c94f1924 | ||||
user: User One <user1@example.org> | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: a | ||||
$ hg log -u "user3" | ||||
Yuya Nishihara
|
r35561 | "-u USER" shouldn't be overridden by "user(USER)" alias | ||
$ hg log --config 'revsetalias.user(x)=branch(x)' -u default | ||||
$ hg log --config 'revsetalias.user(x)=branch(x)' -u user1 | ||||
changeset: 0:29a4c94f1924 | ||||
user: User One <user1@example.org> | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: a | ||||
Nicolas Dumazet
|
r11900 | $ cd .. | ||
$ hg init branches | ||||
$ cd branches | ||||
$ echo a > a | ||||
$ hg ci -A -m "commit on default" | ||||
adding a | ||||
$ hg branch test | ||||
marked working directory as branch test | ||||
Matt Mackall
|
r15615 | (branches are permanent and global, did you want a bookmark?) | ||
Nicolas Dumazet
|
r11900 | $ echo b > b | ||
$ hg ci -A -m "commit on test" | ||||
adding b | ||||
$ hg up default | ||||
0 files updated, 0 files merged, 1 files removed, 0 files unresolved | ||||
$ echo c > c | ||||
$ hg ci -A -m "commit on default" | ||||
adding c | ||||
$ hg up test | ||||
1 files updated, 0 files merged, 1 files removed, 0 files unresolved | ||||
$ echo c > c | ||||
$ hg ci -A -m "commit on test" | ||||
adding c | ||||
log -b default | ||||
$ hg log -b default | ||||
changeset: 2:c3a4f03cc9a7 | ||||
parent: 0:24427303d56f | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: commit on default | ||||
changeset: 0:24427303d56f | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: commit on default | ||||
log -b test | ||||
$ hg log -b test | ||||
changeset: 3:f5d8de11c2e2 | ||||
branch: test | ||||
tag: tip | ||||
parent: 1:d32277701ccb | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: commit on test | ||||
changeset: 1:d32277701ccb | ||||
branch: test | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: commit on test | ||||
log -b dummy | ||||
$ hg log -b dummy | ||||
Martin von Zweigbergk
|
r46518 | abort: unknown revision 'dummy' | ||
Martin von Zweigbergk
|
r49191 | [10] | ||
Nicolas Dumazet
|
r11900 | |||
log -b . | ||||
$ hg log -b . | ||||
changeset: 3:f5d8de11c2e2 | ||||
branch: test | ||||
tag: tip | ||||
parent: 1:d32277701ccb | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: commit on test | ||||
changeset: 1:d32277701ccb | ||||
branch: test | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: commit on test | ||||
log -b default -b test | ||||
$ hg log -b default -b test | ||||
changeset: 3:f5d8de11c2e2 | ||||
branch: test | ||||
tag: tip | ||||
parent: 1:d32277701ccb | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: commit on test | ||||
changeset: 2:c3a4f03cc9a7 | ||||
parent: 0:24427303d56f | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: commit on default | ||||
changeset: 1:d32277701ccb | ||||
branch: test | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: commit on test | ||||
changeset: 0:24427303d56f | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: commit on default | ||||
log -b default -b . | ||||
$ hg log -b default -b . | ||||
changeset: 3:f5d8de11c2e2 | ||||
branch: test | ||||
tag: tip | ||||
parent: 1:d32277701ccb | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: commit on test | ||||
changeset: 2:c3a4f03cc9a7 | ||||
parent: 0:24427303d56f | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: commit on default | ||||
changeset: 1:d32277701ccb | ||||
branch: test | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: commit on test | ||||
changeset: 0:24427303d56f | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: commit on default | ||||
log -b . -b test | ||||
$ hg log -b . -b test | ||||
changeset: 3:f5d8de11c2e2 | ||||
branch: test | ||||
tag: tip | ||||
parent: 1:d32277701ccb | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: commit on test | ||||
changeset: 1:d32277701ccb | ||||
branch: test | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: commit on test | ||||
log -b 2 | ||||
$ hg log -b 2 | ||||
changeset: 2:c3a4f03cc9a7 | ||||
parent: 0:24427303d56f | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: commit on default | ||||
changeset: 0:24427303d56f | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: commit on default | ||||
Sean Farley
|
r23771 | #if gettext | ||
Nicolas Dumazet
|
r11900 | |||
Sean Farley
|
r23771 | Test that all log names are translated (e.g. branches, bookmarks, tags): | ||
$ hg bookmark babar -r tip | ||||
$ HGENCODING=UTF-8 LANGUAGE=de hg log -r tip | ||||
\xc3\x84nderung: 3:f5d8de11c2e2 (esc) | ||||
Zweig: test | ||||
Lesezeichen: babar | ||||
Marke: tip | ||||
Vorg\xc3\xa4nger: 1:d32277701ccb (esc) | ||||
Nutzer: test | ||||
Datum: Thu Jan 01 00:00:00 1970 +0000 | ||||
Zusammenfassung: commit on test | ||||
$ hg bookmark -d babar | ||||
#endif | ||||
Nicolas Dumazet
|
r11900 | |||
log -p --cwd dir (in subdir) | ||||
$ mkdir dir | ||||
$ hg log -p --cwd dir | ||||
changeset: 3:f5d8de11c2e2 | ||||
branch: test | ||||
tag: tip | ||||
parent: 1:d32277701ccb | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: commit on test | ||||
diff -r d32277701ccb -r f5d8de11c2e2 c | ||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/c Thu Jan 01 00:00:00 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+c | ||||
changeset: 2:c3a4f03cc9a7 | ||||
parent: 0:24427303d56f | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: commit on default | ||||
diff -r 24427303d56f -r c3a4f03cc9a7 c | ||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/c Thu Jan 01 00:00:00 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+c | ||||
changeset: 1:d32277701ccb | ||||
branch: test | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: commit on test | ||||
diff -r 24427303d56f -r d32277701ccb b | ||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/b Thu Jan 01 00:00:00 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+b | ||||
changeset: 0:24427303d56f | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: commit on default | ||||
diff -r 000000000000 -r 24427303d56f a | ||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/a Thu Jan 01 00:00:00 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+a | ||||
log -p -R repo | ||||
$ cd dir | ||||
$ hg log -p -R .. ../a | ||||
changeset: 0:24427303d56f | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: commit on default | ||||
diff -r 000000000000 -r 24427303d56f a | ||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/a Thu Jan 01 00:00:00 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+a | ||||
Mads Kiilerich
|
r16912 | $ cd ../.. | ||
Nicolas Dumazet
|
r11900 | |||
$ hg init follow2 | ||||
$ cd follow2 | ||||
# Build the following history: | ||||
# tip - o - x - o - x - x | ||||
# \ / | ||||
# o - o - o - x | ||||
# \ / | ||||
# o | ||||
# | ||||
# Where "o" is a revision containing "foo" and | ||||
# "x" is a revision without "foo" | ||||
$ touch init | ||||
$ hg ci -A -m "init, unrelated" | ||||
adding init | ||||
$ echo 'foo' > init | ||||
$ hg ci -m "change, unrelated" | ||||
$ echo 'foo' > foo | ||||
$ hg ci -A -m "add unrelated old foo" | ||||
adding foo | ||||
$ hg rm foo | ||||
$ hg ci -m "delete foo, unrelated" | ||||
$ echo 'related' > foo | ||||
$ hg ci -A -m "add foo, related" | ||||
adding foo | ||||
$ hg up 0 | ||||
1 files updated, 0 files merged, 1 files removed, 0 files unresolved | ||||
$ touch branch | ||||
$ hg ci -A -m "first branch, unrelated" | ||||
adding branch | ||||
created new head | ||||
$ touch foo | ||||
$ hg ci -A -m "create foo, related" | ||||
adding foo | ||||
$ echo 'change' > foo | ||||
$ hg ci -m "change foo, related" | ||||
$ hg up 6 | ||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
$ echo 'change foo in branch' > foo | ||||
$ hg ci -m "change foo in branch, related" | ||||
created new head | ||||
$ hg merge 7 | ||||
merging foo | ||||
Siddharth Agarwal
|
r26614 | warning: conflicts while merging foo! (edit, then use 'hg resolve --mark') | ||
Nicolas Dumazet
|
r11900 | 0 files updated, 0 files merged, 0 files removed, 1 files unresolved | ||
Pulkit Goyal
|
r35722 | use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon | ||
Matt Mackall
|
r12316 | [1] | ||
Nicolas Dumazet
|
r11900 | $ echo 'merge 1' > foo | ||
$ hg resolve -m foo | ||||
Pierre-Yves David
|
r21947 | (no more unresolved files) | ||
Nicolas Dumazet
|
r11900 | $ hg ci -m "First merge, related" | ||
$ hg merge 4 | ||||
merging foo | ||||
Siddharth Agarwal
|
r26614 | warning: conflicts while merging foo! (edit, then use 'hg resolve --mark') | ||
Nicolas Dumazet
|
r11900 | 1 files updated, 0 files merged, 0 files removed, 1 files unresolved | ||
Pulkit Goyal
|
r35722 | use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon | ||
Matt Mackall
|
r12316 | [1] | ||
Nicolas Dumazet
|
r11900 | $ echo 'merge 2' > foo | ||
$ hg resolve -m foo | ||||
Pierre-Yves David
|
r21947 | (no more unresolved files) | ||
Nicolas Dumazet
|
r11900 | $ hg ci -m "Last merge, related" | ||
Patrick Mezard
|
r17181 | $ hg log --graph | ||
Nicolas Dumazet
|
r11900 | @ changeset: 10:4dae8563d2c5 | ||
|\ tag: tip | ||||
| | parent: 9:7b35701b003e | ||||
| | parent: 4:88176d361b69 | ||||
| | user: test | ||||
| | date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| | summary: Last merge, related | ||||
| | | ||||
| o changeset: 9:7b35701b003e | ||||
| |\ parent: 8:e5416ad8a855 | ||||
| | | parent: 7:87fe3144dcfa | ||||
| | | user: test | ||||
| | | date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| | | summary: First merge, related | ||||
| | | | ||||
| | o changeset: 8:e5416ad8a855 | ||||
| | | parent: 6:dc6c325fe5ee | ||||
| | | user: test | ||||
| | | date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| | | summary: change foo in branch, related | ||||
| | | | ||||
| o | changeset: 7:87fe3144dcfa | ||||
| |/ user: test | ||||
| | date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| | summary: change foo, related | ||||
| | | ||||
| o changeset: 6:dc6c325fe5ee | ||||
| | user: test | ||||
| | date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| | summary: create foo, related | ||||
| | | ||||
| o changeset: 5:73db34516eb9 | ||||
| | parent: 0:e87515fd044a | ||||
| | user: test | ||||
| | date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| | summary: first branch, unrelated | ||||
| | | ||||
o | changeset: 4:88176d361b69 | ||||
| | user: test | ||||
| | date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| | summary: add foo, related | ||||
| | | ||||
o | changeset: 3:dd78ae4afb56 | ||||
| | user: test | ||||
| | date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| | summary: delete foo, unrelated | ||||
| | | ||||
o | changeset: 2:c4c64aedf0f7 | ||||
| | user: test | ||||
| | date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| | summary: add unrelated old foo | ||||
| | | ||||
o | changeset: 1:e5faa7440653 | ||||
|/ user: test | ||||
| date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| summary: change, unrelated | ||||
| | ||||
o changeset: 0:e87515fd044a | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: init, unrelated | ||||
$ hg --traceback log -f foo | ||||
changeset: 10:4dae8563d2c5 | ||||
tag: tip | ||||
parent: 9:7b35701b003e | ||||
parent: 4:88176d361b69 | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: Last merge, related | ||||
changeset: 9:7b35701b003e | ||||
parent: 8:e5416ad8a855 | ||||
parent: 7:87fe3144dcfa | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: First merge, related | ||||
changeset: 8:e5416ad8a855 | ||||
parent: 6:dc6c325fe5ee | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: change foo in branch, related | ||||
changeset: 7:87fe3144dcfa | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: change foo, related | ||||
changeset: 6:dc6c325fe5ee | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: create foo, related | ||||
changeset: 4:88176d361b69 | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: add foo, related | ||||
Mads Kiilerich
|
r12383 | |||
Nicolas Dumazet
|
r12972 | Also check when maxrev < lastrevfilelog | ||
$ hg --traceback log -f -r4 foo | ||||
changeset: 4:88176d361b69 | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: add foo, related | ||||
Mads Kiilerich
|
r16912 | $ cd .. | ||
Nicolas Dumazet
|
r12972 | |||
Martin Geisler
|
r12399 | Issue2383: hg log showing _less_ differences than hg diff | ||
Mads Kiilerich
|
r12383 | |||
$ hg init issue2383 | ||||
$ cd issue2383 | ||||
Create a test repo: | ||||
$ echo a > a | ||||
$ hg ci -Am0 | ||||
adding a | ||||
$ echo b > b | ||||
$ hg ci -Am1 | ||||
adding b | ||||
$ hg co 0 | ||||
0 files updated, 0 files merged, 1 files removed, 0 files unresolved | ||||
$ echo b > a | ||||
$ hg ci -m2 | ||||
created new head | ||||
Merge: | ||||
$ hg merge | ||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
(branch merge, don't forget to commit) | ||||
Make sure there's a file listed in the merge to trigger the bug: | ||||
$ echo c > a | ||||
$ hg ci -m3 | ||||
Two files shown here in diff: | ||||
$ hg diff --rev 2:3 | ||||
diff -r b09be438c43a -r 8e07aafe1edc a | ||||
--- a/a Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/a Thu Jan 01 00:00:00 1970 +0000 | ||||
@@ -1,1 +1,1 @@ | ||||
-b | ||||
+c | ||||
diff -r b09be438c43a -r 8e07aafe1edc b | ||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/b Thu Jan 01 00:00:00 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+b | ||||
Diff here should be the same: | ||||
$ hg log -vpr 3 | ||||
changeset: 3:8e07aafe1edc | ||||
tag: tip | ||||
parent: 2:b09be438c43a | ||||
parent: 1:925d80f479bb | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
files: a | ||||
description: | ||||
3 | ||||
diff -r b09be438c43a -r 8e07aafe1edc a | ||||
--- a/a Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/a Thu Jan 01 00:00:00 1970 +0000 | ||||
@@ -1,1 +1,1 @@ | ||||
-b | ||||
+c | ||||
diff -r b09be438c43a -r 8e07aafe1edc b | ||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/b Thu Jan 01 00:00:00 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+b | ||||
Martin von Zweigbergk
|
r47248 | |||
Test that diff.merge is respected (file b was added on one side and | ||||
and therefore merged cleanly) | ||||
$ hg log -pr 3 --config diff.merge=yes | ||||
changeset: 3:8e07aafe1edc | ||||
tag: tip | ||||
parent: 2:b09be438c43a | ||||
parent: 1:925d80f479bb | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: 3 | ||||
diff -r 8e07aafe1edc a | ||||
--- a/a Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/a Thu Jan 01 00:00:00 1970 +0000 | ||||
@@ -1,1 +1,1 @@ | ||||
-b | ||||
+c | ||||
Mads Kiilerich
|
r12383 | $ cd .. | ||
Nicolas Dumazet
|
r12972 | |||
'hg log -r rev fn' when last(filelog(fn)) != rev | ||||
Mads Kiilerich
|
r16912 | $ hg init simplelog | ||
$ cd simplelog | ||||
Nicolas Dumazet
|
r12972 | $ echo f > a | ||
$ hg ci -Am'a' -d '0 0' | ||||
adding a | ||||
$ echo f >> a | ||||
$ hg ci -Am'a bis' -d '1 0' | ||||
$ hg log -r0 a | ||||
changeset: 0:9f758d63dcde | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: a | ||||
Pierre-Yves David
|
r18208 | enable obsolete to test hidden feature | ||
Durham Goode
|
r22955 | $ cat >> $HGRCPATH << EOF | ||
> [experimental] | ||||
Boris Feld
|
r34867 | > evolution.createmarkers=True | ||
Pierre-Yves David
|
r14645 | > EOF | ||
Pierre-Yves David
|
r18208 | |||
Pierre-Yves David
|
r14645 | $ hg log --template='{rev}:{node}\n' | ||
1:a765632148dc55d38c35c4f247c618701886cb2f | ||||
0:9f758d63dcde62d547ebfb08e1e7ee96535f2b05 | ||||
Pierre-Yves David
|
r18208 | $ hg debugobsolete a765632148dc55d38c35c4f247c618701886cb2f | ||
r43163 | 1 new obsolescence markers | |||
Boris Feld
|
r33542 | obsoleted 1 changesets | ||
Pierre-Yves David
|
r18208 | $ hg up null -q | ||
Pierre-Yves David
|
r14645 | $ hg log --template='{rev}:{node}\n' | ||
0:9f758d63dcde62d547ebfb08e1e7ee96535f2b05 | ||||
$ hg log --template='{rev}:{node}\n' --hidden | ||||
1:a765632148dc55d38c35c4f247c618701886cb2f | ||||
0:9f758d63dcde62d547ebfb08e1e7ee96535f2b05 | ||||
Matt Mackall
|
r19471 | $ hg log -r a | ||
Martin von Zweigbergk
|
r46518 | abort: hidden revision 'a' is pruned | ||
Pierre-Yves David
|
r23046 | (use --hidden to access hidden revisions) | ||
Martin von Zweigbergk
|
r48928 | [10] | ||
FUJIWARA Katsunori
|
r15725 | |||
Pierre-Yves David
|
r18250 | test that parent prevent a changeset to be hidden | ||
Pierre-Yves David
|
r18267 | $ hg up 1 -q --hidden | ||
Martin von Zweigbergk
|
r37939 | updated to hidden changeset a765632148dc | ||
Boris Feld
|
r35729 | (hidden revision 'a765632148dc' is pruned) | ||
Pierre-Yves David
|
r18250 | $ hg log --template='{rev}:{node}\n' | ||
1:a765632148dc55d38c35c4f247c618701886cb2f | ||||
0:9f758d63dcde62d547ebfb08e1e7ee96535f2b05 | ||||
test that second parent prevent a changeset to be hidden too | ||||
$ hg debugsetparents 0 1 # nothing suitable to merge here | ||||
$ hg log --template='{rev}:{node}\n' | ||||
1:a765632148dc55d38c35c4f247c618701886cb2f | ||||
0:9f758d63dcde62d547ebfb08e1e7ee96535f2b05 | ||||
Kevin Bullock
|
r18494 | $ hg debugsetparents 1 | ||
$ hg up -q null | ||||
bookmarks prevent a changeset being hidden | ||||
$ hg bookmark --hidden -r 1 X | ||||
Pulkit Goyal
|
r35629 | bookmarking hidden changeset a765632148dc | ||
Boris Feld
|
r35730 | (hidden revision 'a765632148dc' is pruned) | ||
Kevin Bullock
|
r18494 | $ hg log --template '{rev}:{node}\n' | ||
1:a765632148dc55d38c35c4f247c618701886cb2f | ||||
0:9f758d63dcde62d547ebfb08e1e7ee96535f2b05 | ||||
Kevin Bullock
|
r18495 | $ hg bookmark -d X | ||
divergent bookmarks are not hidden | ||||
$ hg bookmark --hidden -r 1 X@foo | ||||
Pulkit Goyal
|
r35629 | bookmarking hidden changeset a765632148dc | ||
Boris Feld
|
r35730 | (hidden revision 'a765632148dc' is pruned) | ||
Kevin Bullock
|
r18495 | $ hg log --template '{rev}:{node}\n' | ||
1:a765632148dc55d38c35c4f247c618701886cb2f | ||||
0:9f758d63dcde62d547ebfb08e1e7ee96535f2b05 | ||||
Pierre-Yves David
|
r18250 | |||
Yuya Nishihara
|
r30044 | test hidden revision 0 (issue5385) | ||
$ hg bookmark -d X@foo | ||||
$ hg up null -q | ||||
$ hg debugobsolete 9f758d63dcde62d547ebfb08e1e7ee96535f2b05 | ||||
r43163 | 1 new obsolescence markers | |||
Boris Feld
|
r33542 | obsoleted 1 changesets | ||
Yuya Nishihara
|
r30044 | $ echo f > b | ||
$ hg ci -Am'b' -d '2 0' | ||||
adding b | ||||
$ echo f >> b | ||||
$ hg ci -m'b bis' -d '3 0' | ||||
$ hg log -T'{rev}:{node}\n' | ||||
3:d7d28b288a6b83d5d2cf49f10c5974deed3a1d2e | ||||
2:94375ec45bddd2a824535fc04855bd058c926ec0 | ||||
$ hg log -T'{rev}:{node}\n' -r: | ||||
2:94375ec45bddd2a824535fc04855bd058c926ec0 | ||||
3:d7d28b288a6b83d5d2cf49f10c5974deed3a1d2e | ||||
$ hg log -T'{rev}:{node}\n' -r:tip | ||||
2:94375ec45bddd2a824535fc04855bd058c926ec0 | ||||
3:d7d28b288a6b83d5d2cf49f10c5974deed3a1d2e | ||||
$ hg log -T'{rev}:{node}\n' -r:0 | ||||
Martin von Zweigbergk
|
r46518 | abort: hidden revision '0' is pruned | ||
Yuya Nishihara
|
r30044 | (use --hidden to access hidden revisions) | ||
Martin von Zweigbergk
|
r48928 | [10] | ||
Yuya Nishihara
|
r30044 | $ hg log -T'{rev}:{node}\n' -f | ||
3:d7d28b288a6b83d5d2cf49f10c5974deed3a1d2e | ||||
2:94375ec45bddd2a824535fc04855bd058c926ec0 | ||||
FUJIWARA Katsunori
|
r15725 | clear extensions configuration | ||
$ echo '[extensions]' >> $HGRCPATH | ||||
Pierre-Yves David
|
r18208 | $ echo "obs=!" >> $HGRCPATH | ||
FUJIWARA Katsunori
|
r15725 | $ cd .. | ||
test -u/-k for problematic encoding | ||||
# unicode: cp932: | ||||
# u30A2 0x83 0x41(= 'A') | ||||
# u30C2 0x83 0x61(= 'a') | ||||
$ hg init problematicencoding | ||||
$ cd problematicencoding | ||||
Augie Fackler
|
r36711 | >>> with open('setup.sh', 'wb') as f: | ||
... f.write(u''' | ||||
... echo a > text | ||||
... hg add text | ||||
... hg --encoding utf-8 commit -u '\u30A2' -m none | ||||
... echo b > text | ||||
... hg --encoding utf-8 commit -u '\u30C2' -m none | ||||
... echo c > text | ||||
... hg --encoding utf-8 commit -u none -m '\u30A2' | ||||
... echo d > text | ||||
... hg --encoding utf-8 commit -u none -m '\u30C2' | ||||
... '''.encode('utf-8')) and None | ||||
FUJIWARA Katsunori
|
r15725 | $ sh < setup.sh | ||
test in problematic encoding | ||||
Augie Fackler
|
r36711 | >>> with open('test.sh', 'wb') as f: | ||
... f.write(u''' | ||||
... hg --encoding cp932 log --template '{rev}\\n' -u '\u30A2' | ||||
... echo ==== | ||||
... hg --encoding cp932 log --template '{rev}\\n' -u '\u30C2' | ||||
... echo ==== | ||||
... hg --encoding cp932 log --template '{rev}\\n' -k '\u30A2' | ||||
... echo ==== | ||||
... hg --encoding cp932 log --template '{rev}\\n' -k '\u30C2' | ||||
... '''.encode('cp932')) and None | ||||
FUJIWARA Katsunori
|
r15725 | $ sh < test.sh | ||
0 | ||||
==== | ||||
1 | ||||
==== | ||||
2 | ||||
0 | ||||
==== | ||||
3 | ||||
1 | ||||
$ cd .. | ||||
smuralid
|
r17746 | |||
test hg log on non-existent files and on directories | ||||
$ hg init issue1340 | ||||
$ cd issue1340 | ||||
$ mkdir d1; mkdir D2; mkdir D3.i; mkdir d4.hg; mkdir d5.d; mkdir .d6 | ||||
$ echo 1 > d1/f1 | ||||
$ echo 1 > D2/f1 | ||||
$ echo 1 > D3.i/f1 | ||||
$ echo 1 > d4.hg/f1 | ||||
$ echo 1 > d5.d/f1 | ||||
$ echo 1 > .d6/f1 | ||||
Adrian Buehlmann
|
r17781 | $ hg -q add . | ||
smuralid
|
r17746 | $ hg commit -m "a bunch of weird directories" | ||
$ hg log -l1 d1/f1 | grep changeset | ||||
changeset: 0:65624cd9070a | ||||
$ hg log -l1 f1 | ||||
$ hg log -l1 . | grep changeset | ||||
changeset: 0:65624cd9070a | ||||
$ hg log -l1 ./ | grep changeset | ||||
changeset: 0:65624cd9070a | ||||
$ hg log -l1 d1 | grep changeset | ||||
changeset: 0:65624cd9070a | ||||
$ hg log -l1 D2 | grep changeset | ||||
changeset: 0:65624cd9070a | ||||
$ hg log -l1 D2/f1 | grep changeset | ||||
changeset: 0:65624cd9070a | ||||
$ hg log -l1 D3.i | grep changeset | ||||
changeset: 0:65624cd9070a | ||||
$ hg log -l1 D3.i/f1 | grep changeset | ||||
changeset: 0:65624cd9070a | ||||
$ hg log -l1 d4.hg | grep changeset | ||||
changeset: 0:65624cd9070a | ||||
$ hg log -l1 d4.hg/f1 | grep changeset | ||||
changeset: 0:65624cd9070a | ||||
$ hg log -l1 d5.d | grep changeset | ||||
changeset: 0:65624cd9070a | ||||
$ hg log -l1 d5.d/f1 | grep changeset | ||||
changeset: 0:65624cd9070a | ||||
$ hg log -l1 .d6 | grep changeset | ||||
changeset: 0:65624cd9070a | ||||
$ hg log -l1 .d6/f1 | grep changeset | ||||
changeset: 0:65624cd9070a | ||||
Sean Farley
|
r18466 | |||
issue3772: hg log -r :null showing revision 0 as well | ||||
$ hg log -r :null | ||||
Cristian Zamfir
|
r20699 | changeset: 0:65624cd9070a | ||
tag: tip | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: a bunch of weird directories | ||||
Sean Farley
|
r18466 | changeset: -1:000000000000 | ||
user: | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
Kevin Bullock
|
r18468 | $ hg log -r null:null | ||
changeset: -1:000000000000 | ||||
user: | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
Yuya Nishihara
|
r24584 | working-directory revision requires special treatment | ||
Yuya Nishihara
|
r28565 | clean: | ||
$ hg log -r 'wdir()' --debug | ||||
changeset: 2147483647:ffffffffffffffffffffffffffffffffffffffff | ||||
phase: draft | ||||
parent: 0:65624cd9070a035fa7191a54f2b8af39f16b0c08 | ||||
parent: -1:0000000000000000000000000000000000000000 | ||||
Yuya Nishihara
|
r39832 | manifest: 2147483647:ffffffffffffffffffffffffffffffffffffffff | ||
Yuya Nishihara
|
r28565 | user: test | ||
date: [A-Za-z0-9:+ ]+ (re) | ||||
extra: branch=default | ||||
Yuya Nishihara
|
r28566 | $ hg log -r 'wdir()' -p --stat | ||
changeset: 2147483647:ffffffffffff | ||||
parent: 0:65624cd9070a | ||||
user: test | ||||
date: [A-Za-z0-9:+ ]+ (re) | ||||
Yuya Nishihara
|
r28565 | |||
dirty: | ||||
$ echo 2 >> d1/f1 | ||||
$ echo 2 > d1/f2 | ||||
$ hg add d1/f2 | ||||
$ hg remove .d6/f1 | ||||
$ hg status | ||||
M d1/f1 | ||||
A d1/f2 | ||||
R .d6/f1 | ||||
Yuya Nishihara
|
r24584 | $ hg log -r 'wdir()' | ||
Yuya Nishihara
|
r25762 | changeset: 2147483647:ffffffffffff | ||
Yuya Nishihara
|
r25739 | parent: 0:65624cd9070a | ||
Yuya Nishihara
|
r24584 | user: test | ||
date: [A-Za-z0-9:+ ]+ (re) | ||||
$ hg log -r 'wdir()' -q | ||||
Yuya Nishihara
|
r25762 | 2147483647:ffffffffffff | ||
Yuya Nishihara
|
r24584 | |||
Yuya Nishihara
|
r24585 | $ hg log -r 'wdir()' --debug | ||
Yuya Nishihara
|
r25762 | changeset: 2147483647:ffffffffffffffffffffffffffffffffffffffff | ||
Yuya Nishihara
|
r24585 | phase: draft | ||
parent: 0:65624cd9070a035fa7191a54f2b8af39f16b0c08 | ||||
parent: -1:0000000000000000000000000000000000000000 | ||||
Yuya Nishihara
|
r39832 | manifest: 2147483647:ffffffffffffffffffffffffffffffffffffffff | ||
Yuya Nishihara
|
r24585 | user: test | ||
date: [A-Za-z0-9:+ ]+ (re) | ||||
Yuya Nishihara
|
r28565 | files: d1/f1 | ||
files+: d1/f2 | ||||
files-: .d6/f1 | ||||
Yuya Nishihara
|
r24585 | extra: branch=default | ||
Yuya Nishihara
|
r28566 | $ hg log -r 'wdir()' -p --stat --git | ||
changeset: 2147483647:ffffffffffff | ||||
parent: 0:65624cd9070a | ||||
user: test | ||||
date: [A-Za-z0-9:+ ]+ (re) | ||||
.d6/f1 | 1 - | ||||
d1/f1 | 1 + | ||||
d1/f2 | 1 + | ||||
3 files changed, 2 insertions(+), 1 deletions(-) | ||||
diff --git a/.d6/f1 b/.d6/f1 | ||||
deleted file mode 100644 | ||||
--- a/.d6/f1 | ||||
+++ /dev/null | ||||
@@ -1,1 +0,0 @@ | ||||
-1 | ||||
diff --git a/d1/f1 b/d1/f1 | ||||
--- a/d1/f1 | ||||
+++ b/d1/f1 | ||||
@@ -1,1 +1,2 @@ | ||||
1 | ||||
+2 | ||||
diff --git a/d1/f2 b/d1/f2 | ||||
new file mode 100644 | ||||
--- /dev/null | ||||
+++ b/d1/f2 | ||||
@@ -0,0 +1,1 @@ | ||||
+2 | ||||
Yuya Nishihara
|
r24602 | $ hg log -r 'wdir()' -Tjson | ||
[ | ||||
{ | ||||
Yuya Nishihara
|
r37790 | "bookmarks": [], | ||
Yuya Nishihara
|
r24602 | "branch": "default", | ||
"date": [*, 0], (glob) | ||||
"desc": "", | ||||
Yuya Nishihara
|
r39831 | "node": "ffffffffffffffffffffffffffffffffffffffff", | ||
Yuya Nishihara
|
r37790 | "parents": ["65624cd9070a035fa7191a54f2b8af39f16b0c08"], | ||
"phase": "draft", | ||||
Yuya Nishihara
|
r39831 | "rev": 2147483647, | ||
Matt Harbison
|
r25688 | "tags": [], | ||
Yuya Nishihara
|
r37790 | "user": "test" | ||
Yuya Nishihara
|
r24602 | } | ||
] | ||||
$ hg log -r 'wdir()' -Tjson -q | ||||
[ | ||||
{ | ||||
Yuya Nishihara
|
r39831 | "node": "ffffffffffffffffffffffffffffffffffffffff", | ||
"rev": 2147483647 | ||||
Yuya Nishihara
|
r24602 | } | ||
] | ||||
Yuya Nishihara
|
r24603 | $ hg log -r 'wdir()' -Tjson --debug | ||
[ | ||||
{ | ||||
Yuya Nishihara
|
r37790 | "added": ["d1/f2"], | ||
"bookmarks": [], | ||||
Yuya Nishihara
|
r24603 | "branch": "default", | ||
"date": [*, 0], (glob) | ||||
"desc": "", | ||||
Yuya Nishihara
|
r37790 | "extra": {"branch": "default"}, | ||
Yuya Nishihara
|
r39832 | "manifest": "ffffffffffffffffffffffffffffffffffffffff", | ||
Yuya Nishihara
|
r28565 | "modified": ["d1/f1"], | ||
Yuya Nishihara
|
r39831 | "node": "ffffffffffffffffffffffffffffffffffffffff", | ||
Yuya Nishihara
|
r37790 | "parents": ["65624cd9070a035fa7191a54f2b8af39f16b0c08"], | ||
"phase": "draft", | ||||
"removed": [".d6/f1"], | ||||
Yuya Nishihara
|
r39831 | "rev": 2147483647, | ||
Yuya Nishihara
|
r37790 | "tags": [], | ||
"user": "test" | ||||
Yuya Nishihara
|
r24603 | } | ||
] | ||||
Yuya Nishihara
|
r46019 | follow files from wdir | ||
$ hg cp d1/f1 f1-copy | ||||
$ hg stat --all | ||||
M d1/f1 | ||||
A d1/f2 | ||||
A f1-copy | ||||
d1/f1 | ||||
R .d6/f1 | ||||
C D2/f1 | ||||
C D3.i/f1 | ||||
C d4.hg/f1 | ||||
C d5.d/f1 | ||||
$ hg log -T '== {rev} ==\n' -fr'wdir()' --git --stat d5.d/f1 | ||||
== 2147483647 == | ||||
== 0 == | ||||
d5.d/f1 | 1 + | ||||
1 files changed, 1 insertions(+), 0 deletions(-) | ||||
$ hg log -T '== {rev} ==\n' -fr'wdir()' --git --stat d1/f1 | ||||
== 2147483647 == | ||||
d1/f1 | 1 + | ||||
1 files changed, 1 insertions(+), 0 deletions(-) | ||||
== 0 == | ||||
d1/f1 | 1 + | ||||
1 files changed, 1 insertions(+), 0 deletions(-) | ||||
$ hg log -T '== {rev} ==\n' -fr'wdir()' --git --stat d1/f2 | ||||
Yuya Nishihara
|
r46044 | == 2147483647 == | ||
d1/f2 | 1 + | ||||
1 files changed, 1 insertions(+), 0 deletions(-) | ||||
Yuya Nishihara
|
r46019 | |||
$ hg log -T '== {rev} ==\n' -fr'wdir()' --git --stat f1-copy | ||||
Yuya Nishihara
|
r46044 | == 2147483647 == | ||
f1-copy | 1 + | ||||
1 files changed, 1 insertions(+), 0 deletions(-) | ||||
== 0 == | ||||
d1/f1 | 1 + | ||||
1 files changed, 1 insertions(+), 0 deletions(-) | ||||
Yuya Nishihara
|
r46019 | |||
$ hg log -T '== {rev} ==\n' -fr'wdir()' --git --stat notfound | ||||
Yuya Nishihara
|
r46045 | abort: cannot follow file not in any of the specified revisions: "notfound" | ||
[255] | ||||
follow files from wdir and non-wdir revision: | ||||
$ hg log -T '{rev}\n' -fr'wdir()+.' f1-copy | ||||
f1-copy: no such file in rev 65624cd9070a | ||||
2147483647 | ||||
0 | ||||
Yuya Nishihara
|
r46019 | |||
Yuya Nishihara
|
r46043 | follow added/removed files from wdir parent | ||
$ hg log -T '{rev}\n' -f d1/f2 | ||||
abort: cannot follow nonexistent file: "d1/f2" | ||||
[255] | ||||
$ hg log -T '{rev}\n' -f f1-copy | ||||
abort: cannot follow nonexistent file: "f1-copy" | ||||
[255] | ||||
$ hg log -T '{rev}\n' -f .d6/f1 | ||||
abort: cannot follow file not in parent revision: ".d6/f1" | ||||
[255] | ||||
Yuya Nishihara
|
r28565 | $ hg revert -aqC | ||
Sean Farley
|
r23773 | Check that adding an arbitrary name shows up in log automatically | ||
Sean Farley
|
r18466 | |||
Sean Farley
|
r23773 | $ cat > ../names.py <<EOF | ||
> """A small extension to test adding arbitrary names to a repo""" | ||||
Augie Fackler
|
r33967 | > from __future__ import absolute_import | ||
> from mercurial import namespaces | ||||
Sean Farley
|
r23773 | > | ||
> def reposetup(ui, repo): | ||||
Yuya Nishihara
|
r45222 | > if not repo.local(): | ||
> return | ||||
Augie Fackler
|
r36711 | > foo = {b'foo': repo[0].node()} | ||
Sean Farley
|
r23873 | > names = lambda r: foo.keys() | ||
> namemap = lambda r, name: foo.get(name) | ||||
Pulkit Goyal
|
r36345 | > nodemap = lambda r, node: [name for name, n in foo.items() | ||
Sean Farley
|
r23873 | > if n == node] | ||
Augie Fackler
|
r33967 | > ns = namespaces.namespace( | ||
Augie Fackler
|
r36711 | > b"bars", templatename=b"bar", logname=b"barlog", | ||
> colorname=b"barcolor", listnames=names, namemap=namemap, | ||||
Augie Fackler
|
r33967 | > nodemap=nodemap) | ||
Sean Farley
|
r23873 | > | ||
Sean Farley
|
r23773 | > repo.names.addnamespace(ns) | ||
> EOF | ||||
$ hg --config extensions.names=../names.py log -r 0 | ||||
changeset: 0:65624cd9070a | ||||
tag: tip | ||||
Sean Farley
|
r23876 | barlog: foo | ||
Sean Farley
|
r23773 | user: test | ||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: a bunch of weird directories | ||||
Sean Farley
|
r23876 | $ hg --config extensions.names=../names.py \ | ||
> --config extensions.color= --config color.log.barcolor=red \ | ||||
> --color=always log -r 0 | ||||
\x1b[0;33mchangeset: 0:65624cd9070a\x1b[0m (esc) | ||||
tag: tip | ||||
\x1b[0;31mbarlog: foo\x1b[0m (esc) | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: a bunch of weird directories | ||||
$ hg --config extensions.names=../names.py log -r 0 --template '{bars}\n' | ||||
foo | ||||
Ryan McElroy
|
r36687 | Templater parse errors: | ||
simple error | ||||
$ hg log -r . -T '{shortest(node}' | ||||
Yuya Nishihara
|
r36709 | hg: parse error at 14: unexpected token: end | ||
Ryan McElroy
|
r36687 | ({shortest(node} | ||
^ here) | ||||
Martin von Zweigbergk
|
r46507 | [10] | ||
Ryan McElroy
|
r36687 | |||
multi-line template with error | ||||
$ hg log -r . -T 'line 1 | ||||
> line2 | ||||
> {shortest(node} | ||||
> line4\nline5' | ||||
Yuya Nishihara
|
r36709 | hg: parse error at 27: unexpected token: end | ||
Ryan McElroy
|
r36688 | (line 1\nline2\n{shortest(node}\nline4\nline5 | ||
^ here) | ||||
Martin von Zweigbergk
|
r46507 | [10] | ||
Ryan McElroy
|
r36687 | |||
smuralid
|
r17746 | $ cd .. | ||
Durham Goode
|
r23500 | |||
Yuya Nishihara
|
r45222 | New namespace is registered per repo instance, but the template keyword | ||
is global. So we shouldn't expect the namespace always exists. Using | ||||
ssh:// makes sure a bundle repository is created from scratch. (issue6301) | ||||
Valentin Gatien-Baron
|
r48733 | $ hg clone -qr0 "ssh://user@dummy/`pwd`/a" a-clone | ||
Yuya Nishihara
|
r45222 | $ hg incoming --config extensions.names=names.py -R a-clone \ | ||
Valentin Gatien-Baron
|
r48732 | > -T '{bars}\n' -l1 | ||
Yuya Nishihara
|
r45222 | comparing with ssh://user@dummy/$TESTTMP/a | ||
searching for changes | ||||
Durham Goode
|
r23500 | hg log -f dir across branches | ||
$ hg init acrossbranches | ||||
$ cd acrossbranches | ||||
$ mkdir d | ||||
$ echo a > d/a && hg ci -Aqm a | ||||
$ echo b > d/a && hg ci -Aqm b | ||||
$ hg up -q 0 | ||||
$ echo b > d/a && hg ci -Aqm c | ||||
$ hg log -f d -T '{desc}' -G | ||||
@ c | ||||
| | ||||
o a | ||||
Mads Kiilerich
|
r24180 | Ensure that largefiles doesn't interfere with following a normal file | ||
Matt Harbison
|
r23976 | $ hg --config extensions.largefiles= log -f d -T '{desc}' -G | ||
FUJIWARA Katsunori
|
r33209 | The fsmonitor extension is incompatible with the largefiles extension and has been disabled. (fsmonitor !) | ||
Matt Harbison
|
r23976 | @ c | ||
| | ||||
o a | ||||
Durham Goode
|
r23500 | $ hg log -f d/a -T '{desc}' -G | ||
Pierre-Yves David
|
r23704 | @ c | ||
Durham Goode
|
r23500 | | | ||
o a | ||||
$ cd .. | ||||
Pierre-Yves David
|
r23702 | |||
hg log -f with linkrev pointing to another branch | ||||
------------------------------------------------- | ||||
create history with a filerev whose linkrev points to another branch | ||||
$ hg init branchedlinkrev | ||||
$ cd branchedlinkrev | ||||
$ echo 1 > a | ||||
$ hg commit -Am 'content1' | ||||
adding a | ||||
$ echo 2 > a | ||||
$ hg commit -m 'content2' | ||||
$ hg up --rev 'desc(content1)' | ||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
$ echo unrelated > unrelated | ||||
$ hg commit -Am 'unrelated' | ||||
adding unrelated | ||||
created new head | ||||
$ hg graft -r 'desc(content2)' | ||||
grafting 1:2294ae80ad84 "content2" | ||||
$ echo 3 > a | ||||
$ hg commit -m 'content3' | ||||
$ hg log -G | ||||
@ changeset: 4:50b9b36e9c5d | ||||
| tag: tip | ||||
| user: test | ||||
| date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| summary: content3 | ||||
| | ||||
o changeset: 3:15b2327059e5 | ||||
| user: test | ||||
| date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| summary: content2 | ||||
| | ||||
o changeset: 2:2029acd1168c | ||||
| parent: 0:ae0a3c9f9e95 | ||||
| user: test | ||||
| date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| summary: unrelated | ||||
| | ||||
| o changeset: 1:2294ae80ad84 | ||||
|/ user: test | ||||
| date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| summary: content2 | ||||
| | ||||
o changeset: 0:ae0a3c9f9e95 | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: content1 | ||||
log -f on the file should list the graft result. | ||||
$ hg log -Gf a | ||||
@ changeset: 4:50b9b36e9c5d | ||||
| tag: tip | ||||
| user: test | ||||
| date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| summary: content3 | ||||
| | ||||
o changeset: 3:15b2327059e5 | ||||
Martijn Pieters
|
r28627 | : user: test | ||
: date: Thu Jan 01 00:00:00 1970 +0000 | ||||
: summary: content2 | ||||
: | ||||
Pierre-Yves David
|
r23702 | o changeset: 0:ae0a3c9f9e95 | ||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: content1 | ||||
plain log lists the original version | ||||
(XXX we should probably list both) | ||||
$ hg log -G a | ||||
@ changeset: 4:50b9b36e9c5d | ||||
Martijn Pieters
|
r28627 | : tag: tip | ||
: user: test | ||||
: date: Thu Jan 01 00:00:00 1970 +0000 | ||||
: summary: content3 | ||||
: | ||||
: o changeset: 1:2294ae80ad84 | ||||
:/ user: test | ||||
: date: Thu Jan 01 00:00:00 1970 +0000 | ||||
: summary: content2 | ||||
: | ||||
Pierre-Yves David
|
r23702 | o changeset: 0:ae0a3c9f9e95 | ||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: content1 | ||||
Pierre-Yves David
|
r23704 | |||
hg log -f from the grafted changeset | ||||
(The bootstrap should properly take the topology in account) | ||||
$ hg up 'desc(content3)^' | ||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
$ hg log -Gf a | ||||
@ changeset: 3:15b2327059e5 | ||||
Martijn Pieters
|
r28627 | : user: test | ||
: date: Thu Jan 01 00:00:00 1970 +0000 | ||||
: summary: content2 | ||||
: | ||||
Pierre-Yves David
|
r23704 | o changeset: 0:ae0a3c9f9e95 | ||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: content1 | ||||
Pierre-Yves David
|
r23719 | |||
Test that we use the first non-hidden changeset in that case. | ||||
(hide the changeset) | ||||
$ hg log -T '{node}\n' -r 1 | ||||
2294ae80ad8447bc78383182eeac50cb049df623 | ||||
$ hg debugobsolete 2294ae80ad8447bc78383182eeac50cb049df623 | ||||
r43163 | 1 new obsolescence markers | |||
Boris Feld
|
r33542 | obsoleted 1 changesets | ||
Pierre-Yves David
|
r23719 | $ hg log -G | ||
o changeset: 4:50b9b36e9c5d | ||||
| tag: tip | ||||
| user: test | ||||
| date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| summary: content3 | ||||
| | ||||
@ changeset: 3:15b2327059e5 | ||||
| user: test | ||||
| date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| summary: content2 | ||||
| | ||||
o changeset: 2:2029acd1168c | ||||
| parent: 0:ae0a3c9f9e95 | ||||
| user: test | ||||
| date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| summary: unrelated | ||||
| | ||||
o changeset: 0:ae0a3c9f9e95 | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: content1 | ||||
Check that log on the file does not drop the file revision. | ||||
$ hg log -G a | ||||
o changeset: 4:50b9b36e9c5d | ||||
| tag: tip | ||||
| user: test | ||||
| date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| summary: content3 | ||||
| | ||||
@ changeset: 3:15b2327059e5 | ||||
Martijn Pieters
|
r28627 | : user: test | ||
: date: Thu Jan 01 00:00:00 1970 +0000 | ||||
: summary: content2 | ||||
: | ||||
Pierre-Yves David
|
r23719 | o changeset: 0:ae0a3c9f9e95 | ||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: content1 | ||||
Pierre-Yves David
|
r23720 | Even when a head revision is linkrev-shadowed. | ||
$ hg log -T '{node}\n' -r 4 | ||||
50b9b36e9c5df2c6fc6dcefa8ad0da929e84aed2 | ||||
$ hg debugobsolete 50b9b36e9c5df2c6fc6dcefa8ad0da929e84aed2 | ||||
r43163 | 1 new obsolescence markers | |||
Boris Feld
|
r33542 | obsoleted 1 changesets | ||
Pierre-Yves David
|
r23720 | $ hg log -G a | ||
@ changeset: 3:15b2327059e5 | ||||
Martijn Pieters
|
r28627 | : tag: tip | ||
: user: test | ||||
: date: Thu Jan 01 00:00:00 1970 +0000 | ||||
: summary: content2 | ||||
: | ||||
Pierre-Yves David
|
r23720 | o changeset: 0:ae0a3c9f9e95 | ||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: content1 | ||||
Pierre-Yves David
|
r23702 | $ cd .. | ||
Pierre-Yves David
|
r23729 | |||
Even when the file revision is missing from some head: | ||||
$ hg init issue4490 | ||||
$ cd issue4490 | ||||
$ echo '[experimental]' >> .hg/hgrc | ||||
Boris Feld
|
r34867 | $ echo 'evolution.createmarkers=True' >> .hg/hgrc | ||
Pierre-Yves David
|
r23729 | $ echo a > a | ||
$ hg ci -Am0 | ||||
adding a | ||||
$ echo b > b | ||||
$ hg ci -Am1 | ||||
adding b | ||||
$ echo B > b | ||||
$ hg ci --amend -m 1 | ||||
$ hg up 0 | ||||
0 files updated, 0 files merged, 1 files removed, 0 files unresolved | ||||
$ echo c > c | ||||
$ hg ci -Am2 | ||||
adding c | ||||
created new head | ||||
$ hg up 'head() and not .' | ||||
1 files updated, 0 files merged, 1 files removed, 0 files unresolved | ||||
$ hg log -G | ||||
Saurabh Singh
|
r34087 | o changeset: 3:db815d6d32e6 | ||
Pierre-Yves David
|
r23729 | | tag: tip | ||
| parent: 0:f7b1eb17ad24 | ||||
| user: test | ||||
| date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| summary: 2 | ||||
| | ||||
Saurabh Singh
|
r34087 | | @ changeset: 2:9bc8ce7f9356 | ||
Pierre-Yves David
|
r23729 | |/ parent: 0:f7b1eb17ad24 | ||
| user: test | ||||
| date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| summary: 1 | ||||
| | ||||
o changeset: 0:f7b1eb17ad24 | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: 0 | ||||
$ hg log -f -G b | ||||
Saurabh Singh
|
r34087 | @ changeset: 2:9bc8ce7f9356 | ||
Pierre-Yves David
|
r23729 | | parent: 0:f7b1eb17ad24 | ||
Martijn Pieters
|
r28627 | ~ user: test | ||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: 1 | ||||
Pierre-Yves David
|
r23729 | $ hg log -G b | ||
Saurabh Singh
|
r34087 | @ changeset: 2:9bc8ce7f9356 | ||
Pierre-Yves David
|
r23729 | | parent: 0:f7b1eb17ad24 | ||
Martijn Pieters
|
r28627 | ~ user: test | ||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: 1 | ||||
Pierre-Yves David
|
r23865 | $ cd .. | ||
Check proper report when the manifest changes but not the file issue4499 | ||||
------------------------------------------------------------------------ | ||||
$ hg init issue4499 | ||||
$ cd issue4499 | ||||
$ 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 | ||||
> echo 1 > $f; | ||||
> hg add $f; | ||||
> done | ||||
$ hg commit -m 'A1B1C1' | ||||
$ echo 2 > A | ||||
$ echo 2 > B | ||||
$ echo 2 > C | ||||
$ hg commit -m 'A2B2C2' | ||||
$ hg up 0 | ||||
3 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
$ echo 3 > A | ||||
$ echo 2 > B | ||||
$ echo 2 > C | ||||
$ hg commit -m 'A3B2C2' | ||||
created new head | ||||
$ hg log -G | ||||
@ changeset: 2:fe5fc3d0eb17 | ||||
| tag: tip | ||||
| parent: 0:abf4f0e38563 | ||||
| user: test | ||||
| date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| summary: A3B2C2 | ||||
| | ||||
| o changeset: 1:07dcc6b312c0 | ||||
|/ user: test | ||||
| date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| summary: A2B2C2 | ||||
| | ||||
o changeset: 0:abf4f0e38563 | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: A1B1C1 | ||||
Log -f on B should reports current changesets | ||||
$ hg log -fG B | ||||
@ changeset: 2:fe5fc3d0eb17 | ||||
| tag: tip | ||||
| parent: 0:abf4f0e38563 | ||||
| user: test | ||||
| date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| summary: A3B2C2 | ||||
| | ||||
o changeset: 0:abf4f0e38563 | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: A1B1C1 | ||||
$ cd .. | ||||
Navaneeth Suresh
|
r41129 | |||
--- going to test line wrap fix on using both --stat and -G (issue5800) | ||||
$ hg init issue5800 | ||||
$ cd issue5800 | ||||
$ touch a | ||||
$ hg ci -Am 'add a' | ||||
adding a | ||||
---- now we are going to add 300 lines to a | ||||
$ for i in `$TESTDIR/seq.py 1 300`; do echo $i >> a; done | ||||
$ hg ci -m 'modify a' | ||||
$ hg log | ||||
changeset: 1:a98683e6a834 | ||||
tag: tip | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: modify a | ||||
changeset: 0:ac82d8b1f7c4 | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: add a | ||||
---- now visualise the changes we made without template | ||||
$ hg log -l1 -r a98683e6a834 --stat -G | ||||
@ changeset: 1:a98683e6a834 | ||||
| tag: tip | ||||
~ user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: modify a | ||||
a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ | ||||
1 files changed, 300 insertions(+), 0 deletions(-) | ||||
---- with template | ||||
$ hg log -l1 -r a98683e6a834 --stat -G -T bisect | ||||
@ changeset: 1:a98683e6a834 | ||||
| bisect: | ||||
~ tag: tip | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: modify a | ||||
a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ | ||||
1 files changed, 300 insertions(+), 0 deletions(-) | ||||
$ hg log -l1 -r a98683e6a834 --stat -G -T changelog | ||||
1970-01-01 test <test> | ||||
@ * a: | ||||
| modify a | ||||
~ [a98683e6a834] [tip] | ||||
a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ | ||||
1 files changed, 300 insertions(+), 0 deletions(-) | ||||
$ hg log -l1 -r a98683e6a834 --stat -G -T compact | ||||
@ 1[tip] a98683e6a834 1970-01-01 00:00 +0000 test | ||||
| modify a | ||||
~ | ||||
a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ | ||||
1 files changed, 300 insertions(+), 0 deletions(-) | ||||
$ hg log -l1 -r a98683e6a834 --stat -G -T default | ||||
@ changeset: 1:a98683e6a834 | ||||
| tag: tip | ||||
~ user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: modify a | ||||
a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ | ||||
1 files changed, 300 insertions(+), 0 deletions(-) | ||||
$ hg log -l1 -r a98683e6a834 --stat -G -T phases | ||||
@ changeset: 1:a98683e6a834 | ||||
| tag: tip | ||||
~ phase: draft | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: modify a | ||||
a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ | ||||
1 files changed, 300 insertions(+), 0 deletions(-) | ||||
$ hg log -l1 -r a98683e6a834 --stat -G -T show | ||||
@ changeset: 1:a98683e6a834 | ||||
| tag: tip | ||||
~ user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: modify a | ||||
a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ | ||||
1 files changed, 300 insertions(+), 0 deletions(-) | ||||
$ hg log -l1 -r a98683e6a834 --stat -G -T status | ||||
@ changeset: 1:a98683e6a834 | ||||
| tag: tip | ||||
~ user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: modify a | ||||
files: | ||||
M a | ||||
a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ | ||||
1 files changed, 300 insertions(+), 0 deletions(-) | ||||
$ hg log -l1 -r a98683e6a834 --stat -G -T xml | ||||
<?xml version="1.0"?> | ||||
<log> | ||||
@ <logentry revision="1" node="a98683e6a8340830a7683909768b62871e84bc9d"> | ||||
| <tag>tip</tag> | ||||
~ <author email="test">test</author> | ||||
<date>1970-01-01T00:00:00+00:00</date> | ||||
<msg xml:space="preserve">modify a</msg> | ||||
</logentry> | ||||
a | 300 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ | ||||
1 files changed, 300 insertions(+), 0 deletions(-) | ||||
</log> | ||||
$ cd .. | ||||