test-grep.t
1481 lines
| 38.0 KiB
| text/troff
|
Tads3Lexer
/ tests / test-grep.t
Martin Geisler
|
r13956 | $ hg init t | ||
Nicolas Dumazet
|
r11902 | $ cd t | ||
$ echo import > port | ||||
$ hg add port | ||||
$ hg commit -m 0 -u spam -d '0 0' | ||||
$ echo export >> port | ||||
$ hg commit -m 1 -u eggs -d '1 0' | ||||
$ echo export > port | ||||
$ echo vaportight >> port | ||||
$ echo 'import/export' >> port | ||||
$ hg commit -m 2 -u spam -d '2 0' | ||||
$ echo 'import/export' >> port | ||||
$ hg commit -m 3 -u eggs -d '3 0' | ||||
$ head -n 3 port > port1 | ||||
$ mv port1 port | ||||
$ hg commit -m 4 -u spam -d '4 0' | ||||
pattern error | ||||
$ hg grep '**test**' | ||||
Augie Fackler
|
r39079 | grep: invalid match pattern: nothing to repeat* (glob) | ||
Matt Mackall
|
r12316 | [1] | ||
Nicolas Dumazet
|
r11902 | |||
Yuya Nishihara
|
r46317 | invalid revset syntax | ||
Yuya Nishihara
|
r46342 | $ hg log -r 'diffcontains()' | ||
hg: parse error: diffcontains takes at least 1 argument | ||||
Martin von Zweigbergk
|
r46507 | [10] | ||
Yuya Nishihara
|
r46342 | $ hg log -r 'diffcontains(:)' | ||
hg: parse error: diffcontains requires a string pattern | ||||
Martin von Zweigbergk
|
r46507 | [10] | ||
Yuya Nishihara
|
r46342 | $ hg log -r 'diffcontains("re:**test**")' | ||
Yuya Nishihara
|
r46317 | hg: parse error: invalid regular expression: nothing to repeat* (glob) | ||
Martin von Zweigbergk
|
r46507 | [10] | ||
Yuya Nishihara
|
r46317 | |||
Nicolas Dumazet
|
r11902 | simple | ||
Sangeet Kumar Mishra
|
r38650 | $ hg grep -r tip:0 '.*' | ||
Idan Kamara
|
r17923 | port:4:export | ||
port:4:vaportight | ||||
port:4:import/export | ||||
Sushil khanchi
|
r43598 | port:3:export | ||
port:3:vaportight | ||||
port:3:import/export | ||||
port:3:import/export | ||||
port:2:export | ||||
port:2:vaportight | ||||
port:2:import/export | ||||
port:1:import | ||||
port:1:export | ||||
port:0:import | ||||
Sangeet Kumar Mishra
|
r38650 | $ hg grep -r tip:0 port port | ||
Nicolas Dumazet
|
r11902 | port:4:export | ||
port:4:vaportight | ||||
port:4:import/export | ||||
Sushil khanchi
|
r43598 | port:3:export | ||
port:3:vaportight | ||||
port:3:import/export | ||||
port:3:import/export | ||||
port:2:export | ||||
port:2:vaportight | ||||
port:2:import/export | ||||
port:1:import | ||||
port:1:export | ||||
port:0:import | ||||
Nicolas Dumazet
|
r11902 | |||
Martin von Zweigbergk
|
r41654 | simple from subdirectory | ||
$ mkdir dir | ||||
$ cd dir | ||||
$ hg grep -r tip:0 port | ||||
port:4:export | ||||
port:4:vaportight | ||||
port:4:import/export | ||||
Sushil khanchi
|
r43598 | port:3:export | ||
port:3:vaportight | ||||
port:3:import/export | ||||
port:3:import/export | ||||
port:2:export | ||||
port:2:vaportight | ||||
port:2:import/export | ||||
port:1:import | ||||
port:1:export | ||||
port:0:import | ||||
Martin von Zweigbergk
|
r41654 | $ hg grep -r tip:0 port --config ui.relative-paths=yes | ||
../port:4:export | ||||
../port:4:vaportight | ||||
../port:4:import/export | ||||
Sushil khanchi
|
r43598 | ../port:3:export | ||
../port:3:vaportight | ||||
../port:3:import/export | ||||
../port:3:import/export | ||||
../port:2:export | ||||
../port:2:vaportight | ||||
../port:2:import/export | ||||
../port:1:import | ||||
../port:1:export | ||||
../port:0:import | ||||
Martin von Zweigbergk
|
r41654 | $ cd .. | ||
Nicolas Dumazet
|
r11902 | simple with color | ||
$ hg --config extensions.color= grep --config color.mode=ansi \ | ||||
Sangeet Kumar Mishra
|
r38650 | > --color=always port port -r tip:0 | ||
Jordi GutiƩrrez Hermoso
|
r41889 | \x1b[0;35mport\x1b[0m\x1b[0;36m:\x1b[0m\x1b[0;34m4\x1b[0m\x1b[0;36m:\x1b[0mex\x1b[0;31;1mport\x1b[0m (esc) | ||
\x1b[0;35mport\x1b[0m\x1b[0;36m:\x1b[0m\x1b[0;34m4\x1b[0m\x1b[0;36m:\x1b[0mva\x1b[0;31;1mport\x1b[0might (esc) | ||||
\x1b[0;35mport\x1b[0m\x1b[0;36m:\x1b[0m\x1b[0;34m4\x1b[0m\x1b[0;36m:\x1b[0mim\x1b[0;31;1mport\x1b[0m/ex\x1b[0;31;1mport\x1b[0m (esc) | ||||
Sushil khanchi
|
r43598 | \x1b[0;35mport\x1b[0m\x1b[0;36m:\x1b[0m\x1b[0;34m3\x1b[0m\x1b[0;36m:\x1b[0mex\x1b[0;31;1mport\x1b[0m (esc) | ||
\x1b[0;35mport\x1b[0m\x1b[0;36m:\x1b[0m\x1b[0;34m3\x1b[0m\x1b[0;36m:\x1b[0mva\x1b[0;31;1mport\x1b[0might (esc) | ||||
\x1b[0;35mport\x1b[0m\x1b[0;36m:\x1b[0m\x1b[0;34m3\x1b[0m\x1b[0;36m:\x1b[0mim\x1b[0;31;1mport\x1b[0m/ex\x1b[0;31;1mport\x1b[0m (esc) | ||||
\x1b[0;35mport\x1b[0m\x1b[0;36m:\x1b[0m\x1b[0;34m3\x1b[0m\x1b[0;36m:\x1b[0mim\x1b[0;31;1mport\x1b[0m/ex\x1b[0;31;1mport\x1b[0m (esc) | ||||
\x1b[0;35mport\x1b[0m\x1b[0;36m:\x1b[0m\x1b[0;34m2\x1b[0m\x1b[0;36m:\x1b[0mex\x1b[0;31;1mport\x1b[0m (esc) | ||||
\x1b[0;35mport\x1b[0m\x1b[0;36m:\x1b[0m\x1b[0;34m2\x1b[0m\x1b[0;36m:\x1b[0mva\x1b[0;31;1mport\x1b[0might (esc) | ||||
\x1b[0;35mport\x1b[0m\x1b[0;36m:\x1b[0m\x1b[0;34m2\x1b[0m\x1b[0;36m:\x1b[0mim\x1b[0;31;1mport\x1b[0m/ex\x1b[0;31;1mport\x1b[0m (esc) | ||||
\x1b[0;35mport\x1b[0m\x1b[0;36m:\x1b[0m\x1b[0;34m1\x1b[0m\x1b[0;36m:\x1b[0mim\x1b[0;31;1mport\x1b[0m (esc) | ||||
\x1b[0;35mport\x1b[0m\x1b[0;36m:\x1b[0m\x1b[0;34m1\x1b[0m\x1b[0;36m:\x1b[0mex\x1b[0;31;1mport\x1b[0m (esc) | ||||
\x1b[0;35mport\x1b[0m\x1b[0;36m:\x1b[0m\x1b[0;34m0\x1b[0m\x1b[0;36m:\x1b[0mim\x1b[0;31;1mport\x1b[0m (esc) | ||||
Nicolas Dumazet
|
r11902 | |||
Yuya Nishihara
|
r29858 | simple templated | ||
Sangeet Kumar Mishra
|
r38650 | $ hg grep port -r tip:0 \ | ||
Yuya Nishihara
|
r39405 | > -T '{path}:{rev}:{node|short}:{texts % "{if(matched, text|upper, text)}"}\n' | ||
Yuya Nishihara
|
r29858 | port:4:914fa752cdea:exPORT | ||
port:4:914fa752cdea:vaPORTight | ||||
port:4:914fa752cdea:imPORT/exPORT | ||||
Sushil khanchi
|
r43598 | port:3:95040cfd017d:exPORT | ||
port:3:95040cfd017d:vaPORTight | ||||
port:3:95040cfd017d:imPORT/exPORT | ||||
port:3:95040cfd017d:imPORT/exPORT | ||||
port:2:3b325e3481a1:exPORT | ||||
port:2:3b325e3481a1:vaPORTight | ||||
port:2:3b325e3481a1:imPORT/exPORT | ||||
port:1:8b20f75c1585:imPORT | ||||
port:1:8b20f75c1585:exPORT | ||||
port:0:f31323c92170:imPORT | ||||
Yuya Nishihara
|
r29858 | |||
Yuya Nishihara
|
r39405 | $ hg grep port -r tip:0 -T '{path}:{rev}:{texts}\n' | ||
Yuya Nishihara
|
r37518 | port:4:export | ||
port:4:vaportight | ||||
port:4:import/export | ||||
Sushil khanchi
|
r43598 | port:3:export | ||
port:3:vaportight | ||||
port:3:import/export | ||||
port:3:import/export | ||||
port:2:export | ||||
port:2:vaportight | ||||
port:2:import/export | ||||
port:1:import | ||||
port:1:export | ||||
port:0:import | ||||
Yuya Nishihara
|
r37518 | |||
Yuya Nishihara
|
r39405 | $ hg grep port -r tip:0 -T '{path}:{tags}:{texts}\n' | ||
Yuya Nishihara
|
r38558 | port:tip:export | ||
port:tip:vaportight | ||||
port:tip:import/export | ||||
Sushil khanchi
|
r43598 | port::export | ||
port::vaportight | ||||
port::import/export | ||||
port::import/export | ||||
port::export | ||||
port::vaportight | ||||
port::import/export | ||||
port::import | ||||
port::export | ||||
port::import | ||||
Yuya Nishihara
|
r38558 | |||
Yuya Nishihara
|
r29858 | simple JSON (no "change" field) | ||
Sangeet Kumar Mishra
|
r38650 | $ hg grep -r tip:0 -Tjson port | ||
Yuya Nishihara
|
r29858 | [ | ||
{ | ||||
Yuya Nishihara
|
r37788 | "date": [4, 0], | ||
Yuya Nishihara
|
r39966 | "lineno": 1, | ||
Yuya Nishihara
|
r29858 | "node": "914fa752cdea87777ac1a8d5c858b0c736218f6c", | ||
Yuya Nishihara
|
r39405 | "path": "port", | ||
Yuya Nishihara
|
r29858 | "rev": 4, | ||
"texts": [{"matched": false, "text": "ex"}, {"matched": true, "text": "port"}], | ||||
"user": "spam" | ||||
}, | ||||
{ | ||||
Yuya Nishihara
|
r37788 | "date": [4, 0], | ||
Yuya Nishihara
|
r39966 | "lineno": 2, | ||
Yuya Nishihara
|
r29858 | "node": "914fa752cdea87777ac1a8d5c858b0c736218f6c", | ||
Yuya Nishihara
|
r39405 | "path": "port", | ||
Yuya Nishihara
|
r29858 | "rev": 4, | ||
"texts": [{"matched": false, "text": "va"}, {"matched": true, "text": "port"}, {"matched": false, "text": "ight"}], | ||||
"user": "spam" | ||||
}, | ||||
{ | ||||
Yuya Nishihara
|
r37788 | "date": [4, 0], | ||
Yuya Nishihara
|
r39966 | "lineno": 3, | ||
Yuya Nishihara
|
r29858 | "node": "914fa752cdea87777ac1a8d5c858b0c736218f6c", | ||
Yuya Nishihara
|
r39405 | "path": "port", | ||
Yuya Nishihara
|
r29858 | "rev": 4, | ||
"texts": [{"matched": false, "text": "im"}, {"matched": true, "text": "port"}, {"matched": false, "text": "/ex"}, {"matched": true, "text": "port"}], | ||||
"user": "spam" | ||||
Sushil khanchi
|
r43598 | }, | ||
{ | ||||
"date": [3, 0], | ||||
"lineno": 1, | ||||
"node": "95040cfd017d658c536071c6290230a613c4c2a6", | ||||
"path": "port", | ||||
"rev": 3, | ||||
"texts": [{"matched": false, "text": "ex"}, {"matched": true, "text": "port"}], | ||||
"user": "eggs" | ||||
}, | ||||
{ | ||||
"date": [3, 0], | ||||
"lineno": 2, | ||||
"node": "95040cfd017d658c536071c6290230a613c4c2a6", | ||||
"path": "port", | ||||
"rev": 3, | ||||
"texts": [{"matched": false, "text": "va"}, {"matched": true, "text": "port"}, {"matched": false, "text": "ight"}], | ||||
"user": "eggs" | ||||
}, | ||||
{ | ||||
"date": [3, 0], | ||||
"lineno": 3, | ||||
"node": "95040cfd017d658c536071c6290230a613c4c2a6", | ||||
"path": "port", | ||||
"rev": 3, | ||||
"texts": [{"matched": false, "text": "im"}, {"matched": true, "text": "port"}, {"matched": false, "text": "/ex"}, {"matched": true, "text": "port"}], | ||||
"user": "eggs" | ||||
}, | ||||
{ | ||||
"date": [3, 0], | ||||
"lineno": 4, | ||||
"node": "95040cfd017d658c536071c6290230a613c4c2a6", | ||||
"path": "port", | ||||
"rev": 3, | ||||
"texts": [{"matched": false, "text": "im"}, {"matched": true, "text": "port"}, {"matched": false, "text": "/ex"}, {"matched": true, "text": "port"}], | ||||
"user": "eggs" | ||||
}, | ||||
{ | ||||
"date": [2, 0], | ||||
"lineno": 1, | ||||
"node": "3b325e3481a1f07435d81dfdbfa434d9a0245b47", | ||||
"path": "port", | ||||
"rev": 2, | ||||
"texts": [{"matched": false, "text": "ex"}, {"matched": true, "text": "port"}], | ||||
"user": "spam" | ||||
}, | ||||
{ | ||||
"date": [2, 0], | ||||
"lineno": 2, | ||||
"node": "3b325e3481a1f07435d81dfdbfa434d9a0245b47", | ||||
"path": "port", | ||||
"rev": 2, | ||||
"texts": [{"matched": false, "text": "va"}, {"matched": true, "text": "port"}, {"matched": false, "text": "ight"}], | ||||
"user": "spam" | ||||
}, | ||||
{ | ||||
"date": [2, 0], | ||||
"lineno": 3, | ||||
"node": "3b325e3481a1f07435d81dfdbfa434d9a0245b47", | ||||
"path": "port", | ||||
"rev": 2, | ||||
"texts": [{"matched": false, "text": "im"}, {"matched": true, "text": "port"}, {"matched": false, "text": "/ex"}, {"matched": true, "text": "port"}], | ||||
"user": "spam" | ||||
}, | ||||
{ | ||||
"date": [1, 0], | ||||
"lineno": 1, | ||||
"node": "8b20f75c158513ff5ac80bd0e5219bfb6f0eb587", | ||||
"path": "port", | ||||
"rev": 1, | ||||
"texts": [{"matched": false, "text": "im"}, {"matched": true, "text": "port"}], | ||||
"user": "eggs" | ||||
}, | ||||
{ | ||||
"date": [1, 0], | ||||
"lineno": 2, | ||||
"node": "8b20f75c158513ff5ac80bd0e5219bfb6f0eb587", | ||||
"path": "port", | ||||
"rev": 1, | ||||
"texts": [{"matched": false, "text": "ex"}, {"matched": true, "text": "port"}], | ||||
"user": "eggs" | ||||
}, | ||||
{ | ||||
"date": [0, 0], | ||||
"lineno": 1, | ||||
"node": "f31323c9217050ba245ee8b537c713ec2e8ab226", | ||||
"path": "port", | ||||
"rev": 0, | ||||
"texts": [{"matched": false, "text": "im"}, {"matched": true, "text": "port"}], | ||||
"user": "spam" | ||||
Yuya Nishihara
|
r29858 | } | ||
] | ||||
simple JSON without matching lines | ||||
Sangeet Kumar Mishra
|
r38650 | $ hg grep -r tip:0 -Tjson -l port | ||
Yuya Nishihara
|
r29858 | [ | ||
{ | ||||
Yuya Nishihara
|
r37788 | "date": [4, 0], | ||
Yuya Nishihara
|
r39966 | "lineno": 1, | ||
Yuya Nishihara
|
r29858 | "node": "914fa752cdea87777ac1a8d5c858b0c736218f6c", | ||
Yuya Nishihara
|
r39405 | "path": "port", | ||
Yuya Nishihara
|
r29858 | "rev": 4, | ||
"user": "spam" | ||||
Sushil khanchi
|
r43598 | }, | ||
{ | ||||
"date": [3, 0], | ||||
"lineno": 1, | ||||
"node": "95040cfd017d658c536071c6290230a613c4c2a6", | ||||
"path": "port", | ||||
"rev": 3, | ||||
"user": "eggs" | ||||
}, | ||||
{ | ||||
"date": [2, 0], | ||||
"lineno": 1, | ||||
"node": "3b325e3481a1f07435d81dfdbfa434d9a0245b47", | ||||
"path": "port", | ||||
"rev": 2, | ||||
"user": "spam" | ||||
}, | ||||
{ | ||||
"date": [1, 0], | ||||
"lineno": 1, | ||||
"node": "8b20f75c158513ff5ac80bd0e5219bfb6f0eb587", | ||||
"path": "port", | ||||
"rev": 1, | ||||
"user": "eggs" | ||||
}, | ||||
{ | ||||
"date": [0, 0], | ||||
"lineno": 1, | ||||
"node": "f31323c9217050ba245ee8b537c713ec2e8ab226", | ||||
"path": "port", | ||||
"rev": 0, | ||||
"user": "spam" | ||||
Yuya Nishihara
|
r29858 | } | ||
] | ||||
Yuya Nishihara
|
r45999 | diff of each revision for reference | ||
$ hg log -p -T'== rev: {rev} ==\n' | ||||
== rev: 4 == | ||||
diff -r 95040cfd017d -r 914fa752cdea port | ||||
--- a/port Thu Jan 01 00:00:03 1970 +0000 | ||||
+++ b/port Thu Jan 01 00:00:04 1970 +0000 | ||||
@@ -1,4 +1,3 @@ | ||||
export | ||||
vaportight | ||||
import/export | ||||
-import/export | ||||
== rev: 3 == | ||||
diff -r 3b325e3481a1 -r 95040cfd017d port | ||||
--- a/port Thu Jan 01 00:00:02 1970 +0000 | ||||
+++ b/port Thu Jan 01 00:00:03 1970 +0000 | ||||
@@ -1,3 +1,4 @@ | ||||
export | ||||
vaportight | ||||
import/export | ||||
+import/export | ||||
== rev: 2 == | ||||
diff -r 8b20f75c1585 -r 3b325e3481a1 port | ||||
--- a/port Thu Jan 01 00:00:01 1970 +0000 | ||||
+++ b/port Thu Jan 01 00:00:02 1970 +0000 | ||||
@@ -1,2 +1,3 @@ | ||||
-import | ||||
export | ||||
+vaportight | ||||
+import/export | ||||
== rev: 1 == | ||||
diff -r f31323c92170 -r 8b20f75c1585 port | ||||
--- a/port Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/port Thu Jan 01 00:00:01 1970 +0000 | ||||
@@ -1,1 +1,2 @@ | ||||
import | ||||
+export | ||||
== rev: 0 == | ||||
diff -r 000000000000 -r f31323c92170 port | ||||
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/port Thu Jan 01 00:00:00 1970 +0000 | ||||
@@ -0,0 +1,1 @@ | ||||
+import | ||||
Nicolas Dumazet
|
r11902 | all | ||
$ hg grep --traceback --all -nu port port | ||||
port:4:4:-:spam:import/export | ||||
port:3:4:+:eggs:import/export | ||||
port:2:1:-:spam:import | ||||
port:2:2:+:spam:vaportight | ||||
port:2:3:+:spam:import/export | ||||
port:1:2:+:eggs:export | ||||
port:0:1:+:spam:import | ||||
Yuya Nishihara
|
r29858 | all JSON | ||
$ hg grep --all -Tjson port port | ||||
[ | ||||
{ | ||||
"change": "-", | ||||
Yuya Nishihara
|
r37788 | "date": [4, 0], | ||
Yuya Nishihara
|
r39966 | "lineno": 4, | ||
Yuya Nishihara
|
r29858 | "node": "914fa752cdea87777ac1a8d5c858b0c736218f6c", | ||
Yuya Nishihara
|
r39405 | "path": "port", | ||
Yuya Nishihara
|
r29858 | "rev": 4, | ||
"texts": [{"matched": false, "text": "im"}, {"matched": true, "text": "port"}, {"matched": false, "text": "/ex"}, {"matched": true, "text": "port"}], | ||||
"user": "spam" | ||||
}, | ||||
{ | ||||
"change": "+", | ||||
Yuya Nishihara
|
r37788 | "date": [3, 0], | ||
Yuya Nishihara
|
r39966 | "lineno": 4, | ||
Yuya Nishihara
|
r29858 | "node": "95040cfd017d658c536071c6290230a613c4c2a6", | ||
Yuya Nishihara
|
r39405 | "path": "port", | ||
Yuya Nishihara
|
r29858 | "rev": 3, | ||
"texts": [{"matched": false, "text": "im"}, {"matched": true, "text": "port"}, {"matched": false, "text": "/ex"}, {"matched": true, "text": "port"}], | ||||
"user": "eggs" | ||||
}, | ||||
{ | ||||
"change": "-", | ||||
Yuya Nishihara
|
r37788 | "date": [2, 0], | ||
Yuya Nishihara
|
r39966 | "lineno": 1, | ||
Yuya Nishihara
|
r29858 | "node": "3b325e3481a1f07435d81dfdbfa434d9a0245b47", | ||
Yuya Nishihara
|
r39405 | "path": "port", | ||
Yuya Nishihara
|
r29858 | "rev": 2, | ||
"texts": [{"matched": false, "text": "im"}, {"matched": true, "text": "port"}], | ||||
"user": "spam" | ||||
}, | ||||
{ | ||||
"change": "+", | ||||
Yuya Nishihara
|
r37788 | "date": [2, 0], | ||
Yuya Nishihara
|
r39966 | "lineno": 2, | ||
Yuya Nishihara
|
r29858 | "node": "3b325e3481a1f07435d81dfdbfa434d9a0245b47", | ||
Yuya Nishihara
|
r39405 | "path": "port", | ||
Yuya Nishihara
|
r29858 | "rev": 2, | ||
"texts": [{"matched": false, "text": "va"}, {"matched": true, "text": "port"}, {"matched": false, "text": "ight"}], | ||||
"user": "spam" | ||||
}, | ||||
{ | ||||
"change": "+", | ||||
Yuya Nishihara
|
r37788 | "date": [2, 0], | ||
Yuya Nishihara
|
r39966 | "lineno": 3, | ||
Yuya Nishihara
|
r29858 | "node": "3b325e3481a1f07435d81dfdbfa434d9a0245b47", | ||
Yuya Nishihara
|
r39405 | "path": "port", | ||
Yuya Nishihara
|
r29858 | "rev": 2, | ||
"texts": [{"matched": false, "text": "im"}, {"matched": true, "text": "port"}, {"matched": false, "text": "/ex"}, {"matched": true, "text": "port"}], | ||||
"user": "spam" | ||||
}, | ||||
{ | ||||
"change": "+", | ||||
Yuya Nishihara
|
r37788 | "date": [1, 0], | ||
Yuya Nishihara
|
r39966 | "lineno": 2, | ||
Yuya Nishihara
|
r29858 | "node": "8b20f75c158513ff5ac80bd0e5219bfb6f0eb587", | ||
Yuya Nishihara
|
r39405 | "path": "port", | ||
Yuya Nishihara
|
r29858 | "rev": 1, | ||
"texts": [{"matched": false, "text": "ex"}, {"matched": true, "text": "port"}], | ||||
"user": "eggs" | ||||
}, | ||||
{ | ||||
"change": "+", | ||||
Yuya Nishihara
|
r37788 | "date": [0, 0], | ||
Yuya Nishihara
|
r39966 | "lineno": 1, | ||
Yuya Nishihara
|
r29858 | "node": "f31323c9217050ba245ee8b537c713ec2e8ab226", | ||
Yuya Nishihara
|
r39405 | "path": "port", | ||
Yuya Nishihara
|
r29858 | "rev": 0, | ||
"texts": [{"matched": false, "text": "im"}, {"matched": true, "text": "port"}], | ||||
"user": "spam" | ||||
} | ||||
] | ||||
Nicolas Dumazet
|
r11902 | other | ||
Sangeet Kumar Mishra
|
r38650 | $ hg grep -r tip:0 -l port port | ||
Idan Kamara
|
r17805 | port:4 | ||
Sushil khanchi
|
r43598 | port:3 | ||
port:2 | ||||
port:1 | ||||
port:0 | ||||
Sangeet Kumar Mishra
|
r38650 | $ hg grep -r tip:0 import port | ||
Nicolas Dumazet
|
r11902 | port:4:import/export | ||
Sushil khanchi
|
r43598 | port:3:import/export | ||
port:3:import/export | ||||
port:2:import/export | ||||
port:1:import | ||||
port:0:import | ||||
Nicolas Dumazet
|
r11902 | |||
$ hg cp port port2 | ||||
$ hg commit -m 4 -u spam -d '5 0' | ||||
follow | ||||
Sangeet Kumar Mishra
|
r38650 | $ hg grep -r tip:0 --traceback -f 'import\n\Z' port2 | ||
Sushil khanchi
|
r43598 | [1] | ||
Nicolas Dumazet
|
r11902 | $ echo deport >> port2 | ||
$ hg commit -m 5 -u eggs -d '6 0' | ||||
$ hg grep -f --all -nu port port2 | ||||
port2:6:4:+:eggs:deport | ||||
port:4:4:-:spam:import/export | ||||
port:3:4:+:eggs:import/export | ||||
port:2:1:-:spam:import | ||||
port:2:2:+:spam:vaportight | ||||
port:2:3:+:spam:import/export | ||||
port:1:2:+:eggs:export | ||||
port:0:1:+:spam:import | ||||
Yuya Nishihara
|
r24064 | $ hg up -q null | ||
Sangeet Kumar Mishra
|
r38650 | $ hg grep -r 'reverse(:.)' -f port | ||
port:0:import | ||||
Yuya Nishihara
|
r24064 | |||
Yuya Nishihara
|
r37465 | Test wdir | ||
(at least, this shouldn't crash) | ||||
$ hg up -q | ||||
$ echo wport >> port2 | ||||
$ hg stat | ||||
M port2 | ||||
$ hg grep -r 'wdir()' port | ||||
Sushil khanchi
|
r43598 | port:2147483647:export | ||
port:2147483647:vaportight | ||||
port:2147483647:import/export | ||||
Sangeet Kumar Mishra
|
r38217 | port2:2147483647:export | ||
port2:2147483647:vaportight | ||||
port2:2147483647:import/export | ||||
port2:2147483647:deport | ||||
port2:2147483647:wport | ||||
Yuya Nishihara
|
r37465 | |||
Jordi GutiƩrrez Hermoso
|
r52257 | Testing include/exclude | ||
$ hg cp port tort | ||||
$ hg grep port -X tort | ||||
port:export | ||||
port:vaportight | ||||
port:import/export | ||||
port2:export | ||||
port2:vaportight | ||||
port2:import/export | ||||
port2:deport | ||||
port2:wport | ||||
$ hg grep port -I tort | ||||
tort:export | ||||
tort:vaportight | ||||
tort:import/export | ||||
Nicolas Dumazet
|
r11902 | $ cd .. | ||
$ hg init t2 | ||||
$ cd t2 | ||||
Sangeet Kumar Mishra
|
r38650 | $ hg grep -r tip:0 foobar foo | ||
Matt Mackall
|
r12316 | [1] | ||
Sangeet Kumar Mishra
|
r38650 | $ hg grep -r tip:0 foobar | ||
Matt Mackall
|
r12316 | [1] | ||
Nicolas Dumazet
|
r11902 | $ echo blue >> color | ||
$ echo black >> color | ||||
$ hg add color | ||||
$ hg ci -m 0 | ||||
$ echo orange >> color | ||||
$ hg ci -m 1 | ||||
$ echo black > color | ||||
$ hg ci -m 2 | ||||
$ echo orange >> color | ||||
$ echo blue >> color | ||||
$ hg ci -m 3 | ||||
Sangeet Kumar Mishra
|
r38650 | $ hg grep -r tip:0 orange | ||
Nicolas Dumazet
|
r11902 | color:3:orange | ||
Sushil khanchi
|
r43598 | color:1:orange | ||
Nicolas Dumazet
|
r11902 | $ hg grep --all orange | ||
color:3:+:orange | ||||
color:2:-:orange | ||||
color:1:+:orange | ||||
Jordi GutiƩrrez Hermoso
|
r41886 | $ hg grep --diff orange --color=debug | ||
[grep.filename|color][grep.sep|:][grep.rev|3][grep.sep|:][grep.inserted grep.change|+][grep.sep|:][grep.match|orange] | ||||
[grep.filename|color][grep.sep|:][grep.rev|2][grep.sep|:][grep.deleted grep.change|-][grep.sep|:][grep.match|orange] | ||||
[grep.filename|color][grep.sep|:][grep.rev|1][grep.sep|:][grep.inserted grep.change|+][grep.sep|:][grep.match|orange] | ||||
Nicolas Dumazet
|
r11902 | |||
Jordi GutiƩrrez Hermoso
|
r41887 | $ hg grep --diff orange --color=yes | ||
Jordi GutiƩrrez Hermoso
|
r41889 | \x1b[0;35mcolor\x1b[0m\x1b[0;36m:\x1b[0m\x1b[0;34m3\x1b[0m\x1b[0;36m:\x1b[0m\x1b[0;32;1m+\x1b[0m\x1b[0;36m:\x1b[0m\x1b[0;31;1morange\x1b[0m (esc) | ||
\x1b[0;35mcolor\x1b[0m\x1b[0;36m:\x1b[0m\x1b[0;34m2\x1b[0m\x1b[0;36m:\x1b[0m\x1b[0;31;1m-\x1b[0m\x1b[0;36m:\x1b[0m\x1b[0;31;1morange\x1b[0m (esc) | ||||
\x1b[0;35mcolor\x1b[0m\x1b[0;36m:\x1b[0m\x1b[0;34m1\x1b[0m\x1b[0;36m:\x1b[0m\x1b[0;32;1m+\x1b[0m\x1b[0;36m:\x1b[0m\x1b[0;31;1morange\x1b[0m (esc) | ||||
Jordi GutiƩrrez Hermoso
|
r41887 | |||
Sangeet Kumar Mishra
|
r38440 | $ hg grep --diff orange | ||
color:3:+:orange | ||||
color:2:-:orange | ||||
color:1:+:orange | ||||
Yuya Nishihara
|
r46317 | revset predicate for "grep --diff" | ||
Yuya Nishihara
|
r46342 | $ hg log -qr 'diffcontains("re:^bl...$")' | ||
Yuya Nishihara
|
r46317 | 0:203191eb5e21 | ||
Yuya Nishihara
|
r46342 | $ hg log -qr 'diffcontains("orange")' | ||
Yuya Nishihara
|
r46317 | 1:7c585a21e0d1 | ||
2:11bd8bc8d653 | ||||
3:e0116d3829f8 | ||||
Yuya Nishihara
|
r46342 | $ hg log -qr '2:0 & diffcontains("orange")' | ||
Yuya Nishihara
|
r46317 | 2:11bd8bc8d653 | ||
1:7c585a21e0d1 | ||||
Yuya Nishihara
|
r29854 | test substring match: '^' should only match at the beginning | ||
Sangeet Kumar Mishra
|
r38650 | $ hg grep -r tip:0 '^.' --config extensions.color= --color debug | ||
Yuya Nishihara
|
r29854 | [grep.filename|color][grep.sep|:][grep.rev|3][grep.sep|:][grep.match|b]lack | ||
[grep.filename|color][grep.sep|:][grep.rev|3][grep.sep|:][grep.match|o]range | ||||
[grep.filename|color][grep.sep|:][grep.rev|3][grep.sep|:][grep.match|b]lue | ||||
Sushil khanchi
|
r43598 | [grep.filename|color][grep.sep|:][grep.rev|2][grep.sep|:][grep.match|b]lack | ||
[grep.filename|color][grep.sep|:][grep.rev|1][grep.sep|:][grep.match|b]lue | ||||
[grep.filename|color][grep.sep|:][grep.rev|1][grep.sep|:][grep.match|b]lack | ||||
[grep.filename|color][grep.sep|:][grep.rev|1][grep.sep|:][grep.match|o]range | ||||
[grep.filename|color][grep.sep|:][grep.rev|0][grep.sep|:][grep.match|b]lue | ||||
[grep.filename|color][grep.sep|:][grep.rev|0][grep.sep|:][grep.match|b]lack | ||||
Nicolas Dumazet
|
r11902 | |||
match in last "line" without newline | ||||
Matt Harbison
|
r39743 | $ "$PYTHON" -c 'fp = open("noeol", "wb"); fp.write(b"no infinite loop"); fp.close();' | ||
Nicolas Dumazet
|
r11902 | $ hg ci -Amnoeol | ||
adding noeol | ||||
Sangeet Kumar Mishra
|
r38650 | $ hg grep -r tip:0 loop | ||
Mads Kiilerich
|
r15293 | noeol:4:no infinite loop | ||
Nicolas Dumazet
|
r11902 | |||
$ cd .. | ||||
Mads Kiilerich
|
r21024 | Issue685: traceback in grep -r after rename | ||
Martin Geisler
|
r12399 | |||
Nicolas Dumazet
|
r11902 | Got a traceback when using grep on a single | ||
revision with renamed files. | ||||
$ hg init issue685 | ||||
$ cd issue685 | ||||
$ echo octarine > color | ||||
$ hg ci -Amcolor | ||||
adding color | ||||
$ hg rename color colour | ||||
$ hg ci -Am rename | ||||
Sangeet Kumar Mishra
|
r38650 | $ hg grep -r tip:0 octarine | ||
Nicolas Dumazet
|
r11902 | colour:1:octarine | ||
color:0:octarine | ||||
Used to crash here | ||||
$ hg grep -r 1 octarine | ||||
colour:1:octarine | ||||
$ cd .. | ||||
Issue337: test that grep follows parent-child relationships instead | ||||
of just using revision numbers. | ||||
$ hg init issue337 | ||||
$ cd issue337 | ||||
$ echo white > color | ||||
$ hg commit -A -m "0 white" | ||||
adding color | ||||
$ echo red > color | ||||
$ hg commit -A -m "1 red" | ||||
$ hg update 0 | ||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
$ echo black > color | ||||
$ hg commit -A -m "2 black" | ||||
created new head | ||||
$ hg update --clean 1 | ||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
$ echo blue > color | ||||
$ hg commit -A -m "3 blue" | ||||
$ hg grep --all red | ||||
color:3:-:red | ||||
color:1:+:red | ||||
Md. O. Shayan
|
r13920 | |||
Sangeet Kumar Mishra
|
r38440 | $ hg grep --diff red | ||
color:3:-:red | ||||
color:1:+:red | ||||
Sangeet Kumar Mishra
|
r37151 | Issue3885: test that changing revision order does not alter the | ||
revisions printed, just their order. | ||||
$ hg grep --all red -r "all()" | ||||
color:1:+:red | ||||
color:3:-:red | ||||
$ hg grep --all red -r "reverse(all())" | ||||
color:3:-:red | ||||
color:1:+:red | ||||
Sangeet Kumar Mishra
|
r38440 | $ hg grep --diff red -r "all()" | ||
color:1:+:red | ||||
color:3:-:red | ||||
$ hg grep --diff red -r "reverse(all())" | ||||
color:3:-:red | ||||
color:1:+:red | ||||
Mads Kiilerich
|
r16912 | $ cd .. | ||
Md. O. Shayan
|
r13920 | $ hg init a | ||
$ cd a | ||||
Thomas Arendsen Hein
|
r16350 | $ cp "$TESTDIR/binfile.bin" . | ||
Md. O. Shayan
|
r13920 | $ hg add binfile.bin | ||
$ hg ci -m 'add binfile.bin' | ||||
$ hg grep "MaCam" --all | ||||
binfile.bin:0:+: Binary file matches | ||||
Mads Kiilerich
|
r16912 | |||
Sangeet Kumar Mishra
|
r38440 | $ hg grep "MaCam" --diff | ||
binfile.bin:0:+: Binary file matches | ||||
Mads Kiilerich
|
r16912 | $ cd .. | ||
Sangeet Kumar Mishra
|
r38217 | |||
Yuya Nishihara
|
r45998 | Moved line may not be collected by "grep --diff" since it first filters | ||
the contents to be diffed by the pattern. (i.e. | ||||
"diff <(grep pat a) <(grep pat b)", not "diff a b | grep pat".) | ||||
This is much faster than generating full diff per revision. | ||||
$ hg init moved-line | ||||
$ cd moved-line | ||||
$ cat <<'EOF' > a | ||||
> foo | ||||
> bar | ||||
> baz | ||||
> EOF | ||||
$ hg ci -Am initial | ||||
adding a | ||||
$ cat <<'EOF' > a | ||||
> bar | ||||
> baz | ||||
> foo | ||||
> EOF | ||||
$ hg ci -m reorder | ||||
$ hg diff -c 1 | ||||
diff -r a593cc55e81b -r 69789a3b6e80 a | ||||
--- a/a Thu Jan 01 00:00:00 1970 +0000 | ||||
+++ b/a Thu Jan 01 00:00:00 1970 +0000 | ||||
@@ -1,3 +1,3 @@ | ||||
-foo | ||||
bar | ||||
baz | ||||
+foo | ||||
can't find the move of "foo" at the revision 1: | ||||
$ hg grep --diff foo -r1 | ||||
[1] | ||||
"bar" isn't moved at the revisoin 1: | ||||
$ hg grep --diff bar -r1 | ||||
[1] | ||||
$ cd .. | ||||
Sangeet Kumar Mishra
|
r38361 | Test for showing working of allfiles flag | ||
$ hg init sng | ||||
$ cd sng | ||||
$ echo "unmod" >> um | ||||
Valentin Gatien-Baron
|
r45367 | $ echo old > old | ||
$ hg ci -q -A -m "adds unmod to um" | ||||
Sangeet Kumar Mishra
|
r38361 | $ echo "something else" >> new | ||
$ hg ci -A -m "second commit" | ||||
adding new | ||||
$ hg grep -r "." "unmod" | ||||
um:1:unmod | ||||
Valentin Gatien-Baron
|
r45367 | Existing tracked files in the working directory are searched by default | ||
Yuya Nishihara
|
r38672 | |||
$ echo modified >> new | ||||
Valentin Gatien-Baron
|
r45367 | $ echo 'added' > added; hg add added | ||
$ echo 'added, missing' > added-missing; hg add added-missing; rm added-missing | ||||
$ echo 'untracked' > untracked | ||||
$ hg rm old | ||||
Valentin Gatien-Baron
|
r45368 | $ hg grep '' | ||
Valentin Gatien-Baron
|
r45367 | added:added | ||
new:something else | ||||
Yuya Nishihara
|
r38675 | new:modified | ||
um:unmod | ||||
Yuya Nishihara
|
r38672 | |||
Valentin Gatien-Baron
|
r45390 | #if symlink | ||
Grepping a symlink greps its destination | ||||
$ rm -f added; ln -s symlink-added added | ||||
$ hg grep '' | grep added | ||||
added:symlink-added | ||||
Valentin Gatien-Baron
|
r45391 | |||
But we reject symlinks as directories components of a tracked file as | ||||
usual: | ||||
$ mkdir dir; touch dir/f; hg add dir/f | ||||
$ rm -rf dir; ln -s / dir | ||||
$ hg grep '' | ||||
abort: path 'dir/f' traverses symbolic link 'dir' | ||||
[255] | ||||
Valentin Gatien-Baron
|
r45390 | #endif | ||
But we can search files from some other revision with -rREV | ||||
Yuya Nishihara
|
r38672 | |||
Sushil khanchi
|
r43598 | $ hg grep -r. mod | ||
Yuya Nishihara
|
r38672 | um:1:unmod | ||
Sushil khanchi
|
r43598 | $ hg grep --diff mod | ||
Yuya Nishihara
|
r38673 | um:0:+:unmod | ||
Sangeet Kumar Mishra
|
r38361 | $ cd .. | ||
Yuya Nishihara
|
r38674 | Change Default of grep by ui.tweakdefaults, that is, the files not in current | ||
working directory should not be grepp-ed on | ||||
Sangeet Kumar Mishra
|
r38650 | $ hg init ab | ||
$ cd ab | ||||
Yuya Nishihara
|
r38674 | $ cat <<'EOF' >> .hg/hgrc | ||
> [ui] | ||||
> tweakdefaults = True | ||||
> EOF | ||||
Sangeet Kumar Mishra
|
r38650 | $ echo "some text">>file1 | ||
$ hg add file1 | ||||
$ hg commit -m "adds file1" | ||||
$ hg mv file1 file2 | ||||
Yuya Nishihara
|
r38675 | |||
wdir revision is hidden by default: | ||||
Sangeet Kumar Mishra
|
r38650 | $ hg grep "some" | ||
Yuya Nishihara
|
r38675 | file2:some text | ||
but it should be available in template dict: | ||||
$ hg grep "some" -Tjson | ||||
[ | ||||
{ | ||||
"date": [0, 0], | ||||
Yuya Nishihara
|
r39966 | "lineno": 1, | ||
Yuya Nishihara
|
r38675 | "node": "ffffffffffffffffffffffffffffffffffffffff", | ||
Yuya Nishihara
|
r39405 | "path": "file2", | ||
Yuya Nishihara
|
r38675 | "rev": 2147483647, | ||
"texts": [{"matched": true, "text": "some"}, {"matched": false, "text": " text"}], | ||||
"user": "test" | ||||
} | ||||
] | ||||
$ cd .. | ||||
Sangeet Kumar Mishra
|
r38981 | |||
Sushil khanchi
|
r43598 | test -rMULTIREV | ||
Sangeet Kumar Mishra
|
r38981 | |||
$ cd sng | ||||
$ hg rm um | ||||
$ hg commit -m "deletes um" | ||||
Sushil khanchi
|
r43598 | $ hg grep -r "0:2" "unmod" | ||
Sangeet Kumar Mishra
|
r38981 | um:0:unmod | ||
um:1:unmod | ||||
Sushil khanchi
|
r43598 | $ hg grep -r "0:2" "unmod" um | ||
Sangeet Kumar Mishra
|
r38996 | um:0:unmod | ||
um:1:unmod | ||||
Sushil khanchi
|
r43598 | $ hg grep -r "0:2" "unmod" "glob:**/um" # Check that patterns also work | ||
Jordi GutiƩrrez Hermoso
|
r41832 | um:0:unmod | ||
um:1:unmod | ||||
Sangeet Kumar Mishra
|
r38981 | $ cd .. | ||
Sangeet Kumar Mishra
|
r38996 | |||
Yuya Nishihara
|
r46049 | --follow with/without --diff and/or paths | ||
----------------------------------------- | ||||
For each test case, we compare the history traversal of "hg log", | ||||
"hg grep --diff", and "hg grep" (--all-files). | ||||
"hg grep --diff" should traverse the log in the same way as "hg log". | ||||
"hg grep" (--all-files) is slightly different in that it includes | ||||
unmodified changes. | ||||
$ hg init follow | ||||
$ cd follow | ||||
$ cat <<'EOF' >> .hg/hgrc | ||||
Martin von Zweigbergk
|
r46350 | > [command-templates] | ||
> log = '{rev}: {join(files % "{status} {path}", ", ")}\n' | ||||
Yuya Nishihara
|
r46049 | > EOF | ||
$ for f in add0 add0-mod1 add0-rm1 add0-mod2 add0-rm2 add0-mod3 add0-mod4 add0-rm4; do | ||||
> echo data0 >> $f | ||||
> done | ||||
$ hg ci -qAm0 | ||||
$ hg cp add0 add0-cp1 | ||||
$ hg cp add0 add0-cp1-mod1 | ||||
$ hg cp add0 add0-cp1-mod1-rm3 | ||||
$ hg rm add0-rm1 | ||||
$ for f in *mod1*; do | ||||
> echo data1 >> $f | ||||
> done | ||||
$ hg ci -qAm1 | ||||
$ hg update -q 0 | ||||
$ hg cp add0 add0-cp2 | ||||
$ hg cp add0 add0-cp2-mod2 | ||||
$ hg rm add0-rm2 | ||||
$ for f in *mod2*; do | ||||
> echo data2 >> $f | ||||
> done | ||||
$ hg ci -qAm2 | ||||
$ hg update -q 1 | ||||
$ hg cp add0-cp1 add0-cp1-cp3 | ||||
$ hg cp add0-cp1-mod1 add0-cp1-mod1-cp3-mod3 | ||||
$ hg rm add0-cp1-mod1-rm3 | ||||
$ for f in *mod3*; do | ||||
> echo data3 >> $f | ||||
> done | ||||
$ hg ci -qAm3 | ||||
$ hg cp add0 add0-cp4 | ||||
$ hg cp add0 add0-cp4-mod4 | ||||
$ hg rm add0-rm4 | ||||
$ for f in *mod4*; do | ||||
> echo data4 >> $f | ||||
> done | ||||
$ hg log -Gr':wdir()' | ||||
o 2147483647: A add0-cp4, A add0-cp4-mod4, M add0-mod4, R add0-rm4 | ||||
| | ||||
@ 3: A add0-cp1-cp3, A add0-cp1-mod1-cp3-mod3, R add0-cp1-mod1-rm3, M add0-mod3 | ||||
| | ||||
| o 2: A add0-cp2, A add0-cp2-mod2, M add0-mod2, R add0-rm2 | ||||
| | | ||||
o | 1: A add0-cp1, A add0-cp1-mod1, A add0-cp1-mod1-rm3, M add0-mod1, R add0-rm1 | ||||
|/ | ||||
o 0: A add0, A add0-mod1, A add0-mod2, A add0-mod3, A add0-mod4, A add0-rm1, A add0-rm2, A add0-rm4 | ||||
follow revision history from wdir parent: | ||||
$ hg log -f | ||||
3: A add0-cp1-cp3, A add0-cp1-mod1-cp3-mod3, R add0-cp1-mod1-rm3, M add0-mod3 | ||||
1: A add0-cp1, A add0-cp1-mod1, A add0-cp1-mod1-rm3, M add0-mod1, R add0-rm1 | ||||
0: A add0, A add0-mod1, A add0-mod2, A add0-mod3, A add0-mod4, A add0-rm1, A add0-rm2, A add0-rm4 | ||||
$ hg grep --diff -f data | ||||
add0-cp1-mod1-cp3-mod3:3:+:data3 | ||||
add0-mod3:3:+:data3 | ||||
add0-cp1-mod1:1:+:data1 | ||||
add0-cp1-mod1-rm3:1:+:data1 | ||||
add0-mod1:1:+:data1 | ||||
add0:0:+:data0 | ||||
add0-mod1:0:+:data0 | ||||
add0-mod2:0:+:data0 | ||||
add0-mod3:0:+:data0 | ||||
add0-mod4:0:+:data0 | ||||
add0-rm1:0:+:data0 | ||||
add0-rm2:0:+:data0 | ||||
add0-rm4:0:+:data0 | ||||
$ hg grep -f data | ||||
Yuya Nishihara
|
r46050 | add0:3:data0 | ||
add0-cp1:3:data0 | ||||
add0-cp1-cp3:3:data0 | ||||
add0-cp1-mod1:3:data0 | ||||
add0-cp1-mod1:3:data1 | ||||
add0-cp1-mod1-cp3-mod3:3:data0 | ||||
add0-cp1-mod1-cp3-mod3:3:data1 | ||||
add0-cp1-mod1-cp3-mod3:3:data3 | ||||
add0-mod1:3:data0 | ||||
add0-mod1:3:data1 | ||||
add0-mod2:3:data0 | ||||
add0-mod3:3:data0 | ||||
add0-mod3:3:data3 | ||||
add0-mod4:3:data0 | ||||
add0-rm2:3:data0 | ||||
add0-rm4:3:data0 | ||||
add0:1:data0 | ||||
add0-cp1:1:data0 | ||||
add0-cp1-mod1:1:data0 | ||||
add0-cp1-mod1:1:data1 | ||||
add0-cp1-mod1-rm3:1:data0 | ||||
add0-cp1-mod1-rm3:1:data1 | ||||
add0-mod1:1:data0 | ||||
add0-mod1:1:data1 | ||||
add0-mod2:1:data0 | ||||
add0-mod3:1:data0 | ||||
add0-mod4:1:data0 | ||||
add0-rm2:1:data0 | ||||
add0-rm4:1:data0 | ||||
add0:0:data0 | ||||
add0-mod1:0:data0 | ||||
add0-mod2:0:data0 | ||||
add0-mod3:0:data0 | ||||
add0-mod4:0:data0 | ||||
add0-rm1:0:data0 | ||||
add0-rm2:0:data0 | ||||
add0-rm4:0:data0 | ||||
Yuya Nishihara
|
r46049 | |||
follow revision history from specified revision: | ||||
$ hg log -fr2 | ||||
2: A add0-cp2, A add0-cp2-mod2, M add0-mod2, R add0-rm2 | ||||
0: A add0, A add0-mod1, A add0-mod2, A add0-mod3, A add0-mod4, A add0-rm1, A add0-rm2, A add0-rm4 | ||||
$ hg grep --diff -fr2 data | ||||
add0-cp2-mod2:2:+:data2 | ||||
add0-mod2:2:+:data2 | ||||
Yuya Nishihara
|
r46052 | add0:0:+:data0 | ||
add0-mod1:0:+:data0 | ||||
add0-mod2:0:+:data0 | ||||
add0-mod3:0:+:data0 | ||||
add0-mod4:0:+:data0 | ||||
add0-rm1:0:+:data0 | ||||
add0-rm2:0:+:data0 | ||||
add0-rm4:0:+:data0 | ||||
Yuya Nishihara
|
r46049 | |||
$ hg grep -fr2 data | ||||
add0:2:data0 | ||||
add0-cp2:2:data0 | ||||
add0-cp2-mod2:2:data0 | ||||
add0-cp2-mod2:2:data2 | ||||
add0-mod1:2:data0 | ||||
add0-mod2:2:data0 | ||||
add0-mod2:2:data2 | ||||
add0-mod3:2:data0 | ||||
add0-mod4:2:data0 | ||||
add0-rm1:2:data0 | ||||
add0-rm4:2:data0 | ||||
Yuya Nishihara
|
r46052 | add0:0:data0 | ||
add0-mod1:0:data0 | ||||
add0-mod2:0:data0 | ||||
add0-mod3:0:data0 | ||||
add0-mod4:0:data0 | ||||
add0-rm1:0:data0 | ||||
add0-rm2:0:data0 | ||||
add0-rm4:0:data0 | ||||
Yuya Nishihara
|
r46049 | |||
follow revision history from wdir: | ||||
$ hg log -fr'wdir()' | ||||
2147483647: A add0-cp4, A add0-cp4-mod4, M add0-mod4, R add0-rm4 | ||||
3: A add0-cp1-cp3, A add0-cp1-mod1-cp3-mod3, R add0-cp1-mod1-rm3, M add0-mod3 | ||||
1: A add0-cp1, A add0-cp1-mod1, A add0-cp1-mod1-rm3, M add0-mod1, R add0-rm1 | ||||
0: A add0, A add0-mod1, A add0-mod2, A add0-mod3, A add0-mod4, A add0-rm1, A add0-rm2, A add0-rm4 | ||||
BROKEN: should not abort because of removed file | ||||
$ hg grep --diff -fr'wdir()' data | ||||
add0-cp4-mod4:2147483647:+:data4 | ||||
add0-mod4:2147483647:+:data4 | ||||
Martin von Zweigbergk
|
r46518 | add0-rm4:2147483647:-:abort: add0-rm4@None: not found in manifest | ||
Martin von Zweigbergk
|
r46732 | [50] | ||
Yuya Nishihara
|
r46049 | |||
$ hg grep -fr'wdir()' data | ||||
add0:2147483647:data0 | ||||
add0-cp1:2147483647:data0 | ||||
add0-cp1-cp3:2147483647:data0 | ||||
add0-cp1-mod1:2147483647:data0 | ||||
add0-cp1-mod1:2147483647:data1 | ||||
add0-cp1-mod1-cp3-mod3:2147483647:data0 | ||||
add0-cp1-mod1-cp3-mod3:2147483647:data1 | ||||
add0-cp1-mod1-cp3-mod3:2147483647:data3 | ||||
add0-cp4:2147483647:data0 | ||||
add0-cp4-mod4:2147483647:data0 | ||||
add0-cp4-mod4:2147483647:data4 | ||||
add0-mod1:2147483647:data0 | ||||
add0-mod1:2147483647:data1 | ||||
add0-mod2:2147483647:data0 | ||||
add0-mod3:2147483647:data0 | ||||
add0-mod3:2147483647:data3 | ||||
add0-mod4:2147483647:data0 | ||||
add0-mod4:2147483647:data4 | ||||
add0-rm2:2147483647:data0 | ||||
Yuya Nishihara
|
r46052 | add0:3:data0 | ||
add0-cp1:3:data0 | ||||
add0-cp1-cp3:3:data0 | ||||
add0-cp1-mod1:3:data0 | ||||
add0-cp1-mod1:3:data1 | ||||
add0-cp1-mod1-cp3-mod3:3:data0 | ||||
add0-cp1-mod1-cp3-mod3:3:data1 | ||||
add0-cp1-mod1-cp3-mod3:3:data3 | ||||
add0-mod1:3:data0 | ||||
add0-mod1:3:data1 | ||||
add0-mod2:3:data0 | ||||
add0-mod3:3:data0 | ||||
add0-mod3:3:data3 | ||||
add0-mod4:3:data0 | ||||
add0-rm2:3:data0 | ||||
add0-rm4:3:data0 | ||||
Yuya Nishihara
|
r46049 | add0:1:data0 | ||
add0-cp1:1:data0 | ||||
add0-cp1-mod1:1:data0 | ||||
add0-cp1-mod1:1:data1 | ||||
add0-cp1-mod1-rm3:1:data0 | ||||
add0-cp1-mod1-rm3:1:data1 | ||||
add0-mod1:1:data0 | ||||
add0-mod1:1:data1 | ||||
add0-mod2:1:data0 | ||||
add0-mod3:1:data0 | ||||
add0-mod4:1:data0 | ||||
add0-rm2:1:data0 | ||||
add0-rm4:1:data0 | ||||
Yuya Nishihara
|
r46052 | add0:0:data0 | ||
add0-mod1:0:data0 | ||||
add0-mod2:0:data0 | ||||
add0-mod3:0:data0 | ||||
add0-mod4:0:data0 | ||||
add0-rm1:0:data0 | ||||
add0-rm2:0:data0 | ||||
add0-rm4:0:data0 | ||||
follow revision history from multiple revisions: | ||||
$ hg log -fr'1+2' | ||||
2: A add0-cp2, A add0-cp2-mod2, M add0-mod2, R add0-rm2 | ||||
1: A add0-cp1, A add0-cp1-mod1, A add0-cp1-mod1-rm3, M add0-mod1, R add0-rm1 | ||||
0: A add0, A add0-mod1, A add0-mod2, A add0-mod3, A add0-mod4, A add0-rm1, A add0-rm2, A add0-rm4 | ||||
$ hg grep --diff -fr'1+2' data | ||||
add0-cp2-mod2:2:+:data2 | ||||
add0-mod2:2:+:data2 | ||||
Yuya Nishihara
|
r46227 | add0-cp1-mod1:1:+:data1 | ||
add0-cp1-mod1-rm3:1:+:data1 | ||||
add0-mod1:1:+:data1 | ||||
Yuya Nishihara
|
r46052 | add0:0:+:data0 | ||
add0-mod1:0:+:data0 | ||||
add0-mod2:0:+:data0 | ||||
add0-mod3:0:+:data0 | ||||
add0-mod4:0:+:data0 | ||||
add0-rm1:0:+:data0 | ||||
add0-rm2:0:+:data0 | ||||
add0-rm4:0:+:data0 | ||||
$ hg grep -fr'1+2' data | ||||
add0:2:data0 | ||||
add0-cp2:2:data0 | ||||
add0-cp2-mod2:2:data0 | ||||
add0-cp2-mod2:2:data2 | ||||
add0-mod1:2:data0 | ||||
add0-mod2:2:data0 | ||||
add0-mod2:2:data2 | ||||
add0-mod3:2:data0 | ||||
add0-mod4:2:data0 | ||||
add0-rm1:2:data0 | ||||
add0-rm4:2:data0 | ||||
Yuya Nishihara
|
r46227 | add0:1:data0 | ||
add0-cp1:1:data0 | ||||
add0-cp1-mod1:1:data0 | ||||
add0-cp1-mod1:1:data1 | ||||
add0-cp1-mod1-rm3:1:data0 | ||||
add0-cp1-mod1-rm3:1:data1 | ||||
add0-mod1:1:data0 | ||||
add0-mod1:1:data1 | ||||
add0-mod2:1:data0 | ||||
add0-mod3:1:data0 | ||||
add0-mod4:1:data0 | ||||
add0-rm2:1:data0 | ||||
add0-rm4:1:data0 | ||||
Yuya Nishihara
|
r46052 | add0:0:data0 | ||
add0-mod1:0:data0 | ||||
add0-mod2:0:data0 | ||||
add0-mod3:0:data0 | ||||
add0-mod4:0:data0 | ||||
add0-rm1:0:data0 | ||||
add0-rm2:0:data0 | ||||
add0-rm4:0:data0 | ||||
Yuya Nishihara
|
r46049 | |||
follow file history from wdir parent, unmodified in wdir: | ||||
$ hg log -f add0-mod3 | ||||
3: A add0-cp1-cp3, A add0-cp1-mod1-cp3-mod3, R add0-cp1-mod1-rm3, M add0-mod3 | ||||
0: A add0, A add0-mod1, A add0-mod2, A add0-mod3, A add0-mod4, A add0-rm1, A add0-rm2, A add0-rm4 | ||||
$ hg grep --diff -f data add0-mod3 | ||||
add0-mod3:3:+:data3 | ||||
add0-mod3:0:+:data0 | ||||
$ hg grep -f data add0-mod3 | ||||
Yuya Nishihara
|
r46050 | add0-mod3:3:data0 | ||
add0-mod3:3:data3 | ||||
add0-mod3:1:data0 | ||||
add0-mod3:0:data0 | ||||
Yuya Nishihara
|
r46049 | |||
follow file history from wdir parent, modified in wdir: | ||||
$ hg log -f add0-mod4 | ||||
0: A add0, A add0-mod1, A add0-mod2, A add0-mod3, A add0-mod4, A add0-rm1, A add0-rm2, A add0-rm4 | ||||
$ hg grep --diff -f data add0-mod4 | ||||
add0-mod4:0:+:data0 | ||||
$ hg grep -f data add0-mod4 | ||||
Yuya Nishihara
|
r46050 | add0-mod4:3:data0 | ||
add0-mod4:1:data0 | ||||
add0-mod4:0:data0 | ||||
Yuya Nishihara
|
r46049 | |||
follow file history from wdir parent, copied but unmodified: | ||||
$ hg log -f add0-cp1-cp3 | ||||
3: A add0-cp1-cp3, A add0-cp1-mod1-cp3-mod3, R add0-cp1-mod1-rm3, M add0-mod3 | ||||
1: A add0-cp1, A add0-cp1-mod1, A add0-cp1-mod1-rm3, M add0-mod1, R add0-rm1 | ||||
0: A add0, A add0-mod1, A add0-mod2, A add0-mod3, A add0-mod4, A add0-rm1, A add0-rm2, A add0-rm4 | ||||
$ hg grep --diff -f data add0-cp1-cp3 | ||||
add0:0:+:data0 | ||||
Yuya Nishihara
|
r46050 | BROKEN: should follow history across renames | ||
Yuya Nishihara
|
r46049 | $ hg grep -f data add0-cp1-cp3 | ||
Yuya Nishihara
|
r46050 | add0-cp1-cp3:3:data0 | ||
Yuya Nishihara
|
r46049 | |||
follow file history from wdir parent, copied and modified: | ||||
$ hg log -f add0-cp1-mod1-cp3-mod3 | ||||
3: A add0-cp1-cp3, A add0-cp1-mod1-cp3-mod3, R add0-cp1-mod1-rm3, M add0-mod3 | ||||
1: A add0-cp1, A add0-cp1-mod1, A add0-cp1-mod1-rm3, M add0-mod1, R add0-rm1 | ||||
0: A add0, A add0-mod1, A add0-mod2, A add0-mod3, A add0-mod4, A add0-rm1, A add0-rm2, A add0-rm4 | ||||
$ hg grep --diff -f data add0-cp1-mod1-cp3-mod3 | ||||
add0-cp1-mod1-cp3-mod3:3:+:data3 | ||||
add0-cp1-mod1:1:+:data1 | ||||
add0:0:+:data0 | ||||
Yuya Nishihara
|
r46050 | BROKEN: should follow history across renames | ||
Yuya Nishihara
|
r46049 | $ hg grep -f data add0-cp1-mod1-cp3-mod3 | ||
Yuya Nishihara
|
r46050 | add0-cp1-mod1-cp3-mod3:3:data0 | ||
add0-cp1-mod1-cp3-mod3:3:data1 | ||||
add0-cp1-mod1-cp3-mod3:3:data3 | ||||
Yuya Nishihara
|
r46049 | |||
follow file history from wdir parent, copied in wdir: | ||||
$ hg log -f add0-cp4 | ||||
abort: cannot follow nonexistent file: "add0-cp4" | ||||
Martin von Zweigbergk
|
r49402 | [20] | ||
Yuya Nishihara
|
r46049 | |||
$ hg grep --diff -f data add0-cp4 | ||||
Yuya Nishihara
|
r46227 | abort: cannot follow nonexistent file: "add0-cp4" | ||
Martin von Zweigbergk
|
r49402 | [20] | ||
Yuya Nishihara
|
r46049 | |||
Yuya Nishihara
|
r46050 | BROKEN: maybe better to abort | ||
Yuya Nishihara
|
r46049 | $ hg grep -f data add0-cp4 | ||
Yuya Nishihara
|
r46050 | [1] | ||
Yuya Nishihara
|
r46049 | |||
follow file history from wdir parent, removed: | ||||
$ hg log -f add0-cp1-mod1-rm3 | ||||
abort: cannot follow file not in parent revision: "add0-cp1-mod1-rm3" | ||||
Martin von Zweigbergk
|
r49402 | [20] | ||
Yuya Nishihara
|
r46049 | |||
$ hg grep --diff -f data add0-cp1-mod1-rm3 | ||||
abort: cannot follow file not in parent revision: "add0-cp1-mod1-rm3" | ||||
Martin von Zweigbergk
|
r49402 | [20] | ||
Yuya Nishihara
|
r46049 | |||
Yuya Nishihara
|
r46050 | BROKEN: maybe better to abort | ||
Yuya Nishihara
|
r46049 | $ hg grep -f data add0-cp1-mod1-rm3 | ||
Yuya Nishihara
|
r46050 | add0-cp1-mod1-rm3:1:data0 | ||
add0-cp1-mod1-rm3:1:data1 | ||||
Yuya Nishihara
|
r46049 | |||
follow file history from wdir parent (explicit), removed: | ||||
$ hg log -fr. add0-cp1-mod1-rm3 | ||||
abort: cannot follow file not in any of the specified revisions: "add0-cp1-mod1-rm3" | ||||
Martin von Zweigbergk
|
r49402 | [20] | ||
Yuya Nishihara
|
r46049 | |||
$ hg grep --diff -fr. data add0-cp1-mod1-rm3 | ||||
Yuya Nishihara
|
r46227 | abort: cannot follow file not in any of the specified revisions: "add0-cp1-mod1-rm3" | ||
Martin von Zweigbergk
|
r49402 | [20] | ||
Yuya Nishihara
|
r46049 | |||
BROKEN: should abort | ||||
$ hg grep -fr. data add0-cp1-mod1-rm3 | ||||
Yuya Nishihara
|
r46052 | add0-cp1-mod1-rm3:1:data0 | ||
add0-cp1-mod1-rm3:1:data1 | ||||
Yuya Nishihara
|
r46049 | |||
follow file history from wdir parent, removed in wdir: | ||||
$ hg log -f add0-rm4 | ||||
abort: cannot follow file not in parent revision: "add0-rm4" | ||||
Martin von Zweigbergk
|
r49402 | [20] | ||
Yuya Nishihara
|
r46049 | |||
$ hg grep --diff -f data add0-rm4 | ||||
Yuya Nishihara
|
r46227 | abort: cannot follow file not in parent revision: "add0-rm4" | ||
Martin von Zweigbergk
|
r49402 | [20] | ||
Yuya Nishihara
|
r46049 | |||
Yuya Nishihara
|
r46227 | BROKEN: should abort | ||
Yuya Nishihara
|
r46049 | $ hg grep -f data add0-rm4 | ||
Yuya Nishihara
|
r46050 | add0-rm4:3:data0 | ||
add0-rm4:1:data0 | ||||
add0-rm4:0:data0 | ||||
Yuya Nishihara
|
r46049 | |||
follow file history from wdir parent (explicit), removed in wdir: | ||||
$ hg log -fr. add0-rm4 | ||||
0: A add0, A add0-mod1, A add0-mod2, A add0-mod3, A add0-mod4, A add0-rm1, A add0-rm2, A add0-rm4 | ||||
$ hg grep --diff -fr. data add0-rm4 | ||||
Yuya Nishihara
|
r46052 | add0-rm4:0:+:data0 | ||
Yuya Nishihara
|
r46049 | |||
$ hg grep -fr. data add0-rm4 | ||||
add0-rm4:3:data0 | ||||
Yuya Nishihara
|
r46052 | add0-rm4:1:data0 | ||
add0-rm4:0:data0 | ||||
Yuya Nishihara
|
r46049 | |||
follow file history from wdir parent, multiple files: | ||||
$ hg log -f add0-mod3 add0-cp1-mod1 | ||||
3: A add0-cp1-cp3, A add0-cp1-mod1-cp3-mod3, R add0-cp1-mod1-rm3, M add0-mod3 | ||||
1: A add0-cp1, A add0-cp1-mod1, A add0-cp1-mod1-rm3, M add0-mod1, R add0-rm1 | ||||
0: A add0, A add0-mod1, A add0-mod2, A add0-mod3, A add0-mod4, A add0-rm1, A add0-rm2, A add0-rm4 | ||||
$ hg grep --diff -f data add0-mod3 add0-cp1-mod1 | ||||
add0-mod3:3:+:data3 | ||||
add0-cp1-mod1:1:+:data1 | ||||
add0:0:+:data0 | ||||
add0-mod3:0:+:data0 | ||||
Yuya Nishihara
|
r46050 | BROKEN: should follow history across renames | ||
Yuya Nishihara
|
r46049 | $ hg grep -f data add0-mod3 add0-cp1-mod1 | ||
Yuya Nishihara
|
r46050 | add0-cp1-mod1:3:data0 | ||
add0-cp1-mod1:3:data1 | ||||
add0-mod3:3:data0 | ||||
add0-mod3:3:data3 | ||||
add0-cp1-mod1:1:data0 | ||||
add0-cp1-mod1:1:data1 | ||||
add0-mod3:1:data0 | ||||
add0-mod3:0:data0 | ||||
Yuya Nishihara
|
r46049 | |||
follow file history from specified revision, modified: | ||||
$ hg log -fr2 add0-mod2 | ||||
2: A add0-cp2, A add0-cp2-mod2, M add0-mod2, R add0-rm2 | ||||
0: A add0, A add0-mod1, A add0-mod2, A add0-mod3, A add0-mod4, A add0-rm1, A add0-rm2, A add0-rm4 | ||||
$ hg grep --diff -fr2 data add0-mod2 | ||||
Yuya Nishihara
|
r46227 | add0-mod2:2:+:data2 | ||
Yuya Nishihara
|
r46052 | add0-mod2:0:+:data0 | ||
Yuya Nishihara
|
r46049 | |||
$ hg grep -fr2 data add0-mod2 | ||||
add0-mod2:2:data0 | ||||
add0-mod2:2:data2 | ||||
Yuya Nishihara
|
r46052 | add0-mod2:0:data0 | ||
Yuya Nishihara
|
r46049 | |||
follow file history from specified revision, copied but unmodified: | ||||
$ hg log -fr2 add0-cp2 | ||||
2: A add0-cp2, A add0-cp2-mod2, M add0-mod2, R add0-rm2 | ||||
0: A add0, A add0-mod1, A add0-mod2, A add0-mod3, A add0-mod4, A add0-rm1, A add0-rm2, A add0-rm4 | ||||
$ hg grep --diff -fr2 data add0-cp2 | ||||
Yuya Nishihara
|
r46227 | add0:0:+:data0 | ||
Yuya Nishihara
|
r46049 | |||
BROKEN: should follow history across renames | ||||
$ hg grep -fr2 data add0-cp2 | ||||
add0-cp2:2:data0 | ||||
follow file history from specified revision, copied and modified: | ||||
$ hg log -fr2 add0-cp2-mod2 | ||||
2: A add0-cp2, A add0-cp2-mod2, M add0-mod2, R add0-rm2 | ||||
0: A add0, A add0-mod1, A add0-mod2, A add0-mod3, A add0-mod4, A add0-rm1, A add0-rm2, A add0-rm4 | ||||
$ hg grep --diff -fr2 data add0-cp2-mod2 | ||||
Yuya Nishihara
|
r46227 | add0-cp2-mod2:2:+:data2 | ||
add0:0:+:data0 | ||||
Yuya Nishihara
|
r46049 | |||
BROKEN: should follow history across renames | ||||
$ hg grep -fr2 data add0-cp2-mod2 | ||||
add0-cp2-mod2:2:data0 | ||||
add0-cp2-mod2:2:data2 | ||||
follow file history from specified revision, removed: | ||||
$ hg log -fr2 add0-rm2 | ||||
abort: cannot follow file not in any of the specified revisions: "add0-rm2" | ||||
Martin von Zweigbergk
|
r49402 | [20] | ||
Yuya Nishihara
|
r46049 | |||
$ hg grep --diff -fr2 data add0-rm2 | ||||
Yuya Nishihara
|
r46227 | abort: cannot follow file not in any of the specified revisions: "add0-rm2" | ||
Martin von Zweigbergk
|
r49402 | [20] | ||
Yuya Nishihara
|
r46049 | |||
BROKEN: should abort | ||||
$ hg grep -fr2 data add0-rm2 | ||||
Yuya Nishihara
|
r46052 | add0-rm2:0:data0 | ||
Yuya Nishihara
|
r46049 | |||
follow file history from specified revision, multiple files: | ||||
$ hg log -fr2 add0-cp2 add0-mod2 | ||||
2: A add0-cp2, A add0-cp2-mod2, M add0-mod2, R add0-rm2 | ||||
0: A add0, A add0-mod1, A add0-mod2, A add0-mod3, A add0-mod4, A add0-rm1, A add0-rm2, A add0-rm4 | ||||
$ hg grep --diff -fr2 data add0-cp2 add0-mod2 | ||||
Yuya Nishihara
|
r46227 | add0-mod2:2:+:data2 | ||
add0:0:+:data0 | ||||
add0-mod2:0:+:data0 | ||||
Yuya Nishihara
|
r46049 | |||
Yuya Nishihara
|
r46052 | BROKEN: should follow history across renames | ||
Yuya Nishihara
|
r46049 | $ hg grep -fr2 data add0-cp2 add0-mod2 | ||
add0-cp2:2:data0 | ||||
add0-mod2:2:data0 | ||||
add0-mod2:2:data2 | ||||
Yuya Nishihara
|
r46052 | add0-mod2:0:data0 | ||
Yuya Nishihara
|
r46049 | |||
follow file history from wdir, unmodified: | ||||
$ hg log -fr'wdir()' add0-mod3 | ||||
2147483647: A add0-cp4, A add0-cp4-mod4, M add0-mod4, R add0-rm4 | ||||
3: A add0-cp1-cp3, A add0-cp1-mod1-cp3-mod3, R add0-cp1-mod1-rm3, M add0-mod3 | ||||
0: A add0, A add0-mod1, A add0-mod2, A add0-mod3, A add0-mod4, A add0-rm1, A add0-rm2, A add0-rm4 | ||||
$ hg grep --diff -fr'wdir()' data add0-mod3 | ||||
Yuya Nishihara
|
r46052 | add0-mod3:3:+:data3 | ||
add0-mod3:0:+:data0 | ||||
Yuya Nishihara
|
r46049 | |||
$ hg grep -fr'wdir()' data add0-mod3 | ||||
add0-mod3:2147483647:data0 | ||||
add0-mod3:2147483647:data3 | ||||
Yuya Nishihara
|
r46052 | add0-mod3:3:data0 | ||
add0-mod3:3:data3 | ||||
add0-mod3:1:data0 | ||||
add0-mod3:0:data0 | ||||
Yuya Nishihara
|
r46049 | |||
follow file history from wdir, modified: | ||||
$ hg log -fr'wdir()' add0-mod4 | ||||
2147483647: A add0-cp4, A add0-cp4-mod4, M add0-mod4, R add0-rm4 | ||||
0: A add0, A add0-mod1, A add0-mod2, A add0-mod3, A add0-mod4, A add0-rm1, A add0-rm2, A add0-rm4 | ||||
$ hg grep --diff -fr'wdir()' data add0-mod4 | ||||
Yuya Nishihara
|
r46227 | add0-mod4:2147483647:+:data4 | ||
Yuya Nishihara
|
r46052 | add0-mod4:0:+:data0 | ||
Yuya Nishihara
|
r46049 | |||
$ hg grep -fr'wdir()' data add0-mod4 | ||||
add0-mod4:2147483647:data0 | ||||
add0-mod4:2147483647:data4 | ||||
Yuya Nishihara
|
r46052 | add0-mod4:3:data0 | ||
add0-mod4:1:data0 | ||||
add0-mod4:0:data0 | ||||
Yuya Nishihara
|
r46049 | |||
follow file history from wdir, copied but unmodified: | ||||
$ hg log -fr'wdir()' add0-cp4 | ||||
2147483647: A add0-cp4, A add0-cp4-mod4, M add0-mod4, R add0-rm4 | ||||
0: A add0, A add0-mod1, A add0-mod2, A add0-mod3, A add0-mod4, A add0-rm1, A add0-rm2, A add0-rm4 | ||||
$ hg grep --diff -fr'wdir()' data add0-cp4 | ||||
Yuya Nishihara
|
r46227 | add0:0:+:data0 | ||
Yuya Nishihara
|
r46049 | |||
BROKEN: should follow history across renames | ||||
$ hg grep -fr'wdir()' data add0-cp4 | ||||
add0-cp4:2147483647:data0 | ||||
follow file history from wdir, copied and modified: | ||||
$ hg log -fr'wdir()' add0-cp4-mod4 | ||||
2147483647: A add0-cp4, A add0-cp4-mod4, M add0-mod4, R add0-rm4 | ||||
0: A add0, A add0-mod1, A add0-mod2, A add0-mod3, A add0-mod4, A add0-rm1, A add0-rm2, A add0-rm4 | ||||
$ hg grep --diff -fr'wdir()' data add0-cp4-mod4 | ||||
Yuya Nishihara
|
r46227 | add0-cp4-mod4:2147483647:+:data4 | ||
add0:0:+:data0 | ||||
Yuya Nishihara
|
r46049 | |||
BROKEN: should follow history across renames | ||||
$ hg grep -fr'wdir()' data add0-cp4-mod4 | ||||
add0-cp4-mod4:2147483647:data0 | ||||
add0-cp4-mod4:2147483647:data4 | ||||
follow file history from wdir, multiple files: | ||||
$ hg log -fr'wdir()' add0-cp4 add0-mod4 add0-mod3 | ||||
2147483647: A add0-cp4, A add0-cp4-mod4, M add0-mod4, R add0-rm4 | ||||
3: A add0-cp1-cp3, A add0-cp1-mod1-cp3-mod3, R add0-cp1-mod1-rm3, M add0-mod3 | ||||
0: A add0, A add0-mod1, A add0-mod2, A add0-mod3, A add0-mod4, A add0-rm1, A add0-rm2, A add0-rm4 | ||||
$ hg grep --diff -fr'wdir()' data add0-cp4 add0-mod4 add0-mod3 | ||||
Yuya Nishihara
|
r46227 | add0-mod4:2147483647:+:data4 | ||
add0-mod3:3:+:data3 | ||||
add0:0:+:data0 | ||||
add0-mod3:0:+:data0 | ||||
add0-mod4:0:+:data0 | ||||
Yuya Nishihara
|
r46049 | |||
Yuya Nishihara
|
r46052 | BROKEN: should follow history across renames | ||
Yuya Nishihara
|
r46049 | $ hg grep -fr'wdir()' data add0-cp4 add0-mod4 add0-mod3 | ||
add0-cp4:2147483647:data0 | ||||
add0-mod3:2147483647:data0 | ||||
add0-mod3:2147483647:data3 | ||||
add0-mod4:2147483647:data0 | ||||
add0-mod4:2147483647:data4 | ||||
Yuya Nishihara
|
r46052 | add0-mod3:3:data0 | ||
add0-mod3:3:data3 | ||||
add0-mod4:3:data0 | ||||
add0-mod3:1:data0 | ||||
add0-mod4:1:data0 | ||||
add0-mod3:0:data0 | ||||
add0-mod4:0:data0 | ||||
Yuya Nishihara
|
r46049 | |||
$ cd .. | ||||