Mercurial > hg
annotate tests/test-merge-revert2.t @ 16445:453c8670566c
revset: speedup matching() by stopping the match early if a field does not match
Rather than getting all the fields that are being matches from every revision
and then comparing them to those of the target revision, compare each field one
by one and stop the match as soon as there is a match failure.
This can greatly reduce the match time when matching multiple fields.
The impact on match time when matching a single field seems negligible
(according to my measurements).
author | Angel Ezquerra <angel.ezquerra@gmail.com> |
---|---|
date | Fri, 13 Apr 2012 13:46:49 +0200 |
parents | 2371f4aea665 |
children | 25d5a9ecbb85 |
rev | line source |
---|---|
12279 | 1 $ hg init |
2 | |
3 $ echo "added file1" > file1 | |
4 $ echo "another line of text" >> file1 | |
5 $ echo "added file2" > file2 | |
6 $ hg add file1 file2 | |
7 $ hg commit -m "added file1 and file2" | |
8 | |
9 $ echo "changed file1" >> file1 | |
10 $ hg commit -m "changed file1" | |
11 | |
12 $ hg -q log | |
13 1:dfab7f3c2efb | |
14 0:c3fa057dd86f | |
15 $ hg id | |
16 dfab7f3c2efb tip | |
17 | |
18 $ hg update -C 0 | |
19 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
20 $ hg id | |
21 c3fa057dd86f | |
22 | |
23 $ echo "changed file1" >> file1 | |
24 $ hg id | |
25 c3fa057dd86f+ | |
26 | |
27 $ hg revert --no-backup --all | |
28 reverting file1 | |
29 $ hg diff | |
30 $ hg status | |
31 $ hg id | |
32 c3fa057dd86f | |
33 | |
34 $ hg update | |
35 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
36 $ hg diff | |
37 $ hg status | |
38 $ hg id | |
39 dfab7f3c2efb tip | |
40 | |
41 $ hg update -C 0 | |
42 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
43 $ echo "changed file1 different" >> file1 | |
792
49ec802b4a16
Added tests for bug with three-way-merging of old tip, tip and cwd.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff
changeset
|
44 |
12279 | 45 $ hg update |
46 merging file1 | |
47 warning: conflicts during merge. | |
15501
2371f4aea665
merge: give a special message for internal:merge failure (issue3105)
Matt Mackall <mpm@selenic.com>
parents:
12316
diff
changeset
|
48 merging file1 incomplete! (edit conflicts, then use 'hg resolve --mark') |
12279 | 49 0 files updated, 0 files merged, 0 files removed, 1 files unresolved |
50 use 'hg resolve' to retry unresolved file merges | |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12279
diff
changeset
|
51 [1] |
12279 | 52 |
53 $ hg diff --nodates | |
54 diff -r dfab7f3c2efb file1 | |
55 --- a/file1 | |
56 +++ b/file1 | |
57 @@ -1,3 +1,7 @@ | |
58 added file1 | |
59 another line of text | |
60 +<<<<<<< local | |
61 +changed file1 different | |
62 +======= | |
63 changed file1 | |
64 +>>>>>>> other | |
792
49ec802b4a16
Added tests for bug with three-way-merging of old tip, tip and cwd.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff
changeset
|
65 |
12279 | 66 $ hg status |
67 M file1 | |
68 ? file1.orig | |
69 $ hg id | |
70 dfab7f3c2efb+ tip | |
71 | |
72 $ hg revert --no-backup --all | |
73 reverting file1 | |
74 $ hg diff | |
75 $ hg status | |
76 ? file1.orig | |
77 $ hg id | |
78 dfab7f3c2efb tip | |
79 | |
80 $ hg revert -r tip --no-backup --all | |
81 $ hg diff | |
82 $ hg status | |
83 ? file1.orig | |
84 $ hg id | |
85 dfab7f3c2efb tip | |
86 | |
87 $ hg update -C | |
88 0 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
89 $ hg diff | |
90 $ hg status | |
91 ? file1.orig | |
92 $ hg id | |
93 dfab7f3c2efb tip | |
94 |