Mercurial > evolve
comparison tests/test-evolve-issue5967.t @ 4688:75329efe56a9 stable
tests: demonstrate obsmarker creation after discarding conflicting changes
Continued evolve creates an incorrect obsmarker that says 2 is a successor of
1. It's incorrect because 1 was dropped as it created no changes to commit
(after conflict resolution that discarded its changes).
If evolve does the same thing in one go (e.g. just by using --tool :local and
without subsequent need to continue) the obsmarker is correct.
author | Anton Shestakov <av6@dwimlabs.net> |
---|---|
date | Sat, 22 Dec 2018 18:31:32 +0800 |
parents | |
children | 27947b17cfaf |
comparison
equal
deleted
inserted
replaced
4687:313565dd75e3 | 4688:75329efe56a9 |
---|---|
1 hg evolve --continue and obsmarkers after conflict resolution with no changes to commit (issue5967) | |
2 https://bz.mercurial-scm.org/show_bug.cgi?id=5967 | |
3 | |
4 $ . $TESTDIR/testlib/common.sh | |
5 | |
6 $ hg init issue5967 | |
7 $ cd issue5967 | |
8 $ cat > .hg/hgrc << EOF | |
9 > [alias] | |
10 > glog = log -GT "{rev}: {desc}" | |
11 > [extensions] | |
12 > evolve= | |
13 > EOF | |
14 | |
15 $ echo apple > a | |
16 $ hg ci -qAm 'apple' | |
17 $ echo banana > a | |
18 $ hg ci -m 'banana' | |
19 | |
20 Amending revision 0 in a way that causes conflicts | |
21 | |
22 $ hg prev | |
23 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
24 [0] apple | |
25 $ echo apricot > a | |
26 $ hg amend -m 'apricot' | |
27 1 new orphan changesets | |
28 | |
29 $ hg glog | |
30 @ 2: apricot | |
31 | |
32 * 1: banana | |
33 | | |
34 x 0: apple | |
35 | |
36 | |
37 Trying to evolve, then manually discarding changes from revision 1 | |
38 | |
39 $ hg evolve | |
40 move:[1] banana | |
41 atop:[2] apricot | |
42 merging a | |
43 warning: conflicts while merging a! (edit, then use 'hg resolve --mark') | |
44 fix conflicts and see `hg help evolve.interrupted` | |
45 [1] | |
46 | |
47 $ echo apricot > a | |
48 $ hg resolve --mark a | |
49 (no more unresolved files) | |
50 continue: hg evolve --continue | |
51 | |
52 This will correctly notice that revision 1 can be dropped | |
53 | |
54 $ hg evolve --continue | |
55 evolving 1:dd9b5dd30cd6 "banana" | |
56 evolution of 1:dd9b5dd30cd6 created no changes to commit | |
57 working directory is now at 4d6fec23dcc4 | |
58 $ hg glog | |
59 @ 2: apricot | |
60 | |
61 $ hg olog --all | |
62 @ 4d6fec23dcc4 (2) apricot | |
63 |\ | |
64 x | 3ba7db0ce860 (0) apple | |
65 / rewritten(description, content) as 4d6fec23dcc4 using amend by test (Thu Jan 01 00:00:00 1970 +0000) | |
66 | | |
67 x dd9b5dd30cd6 (1) banana | |
68 rewritten(description, parent, content) as 4d6fec23dcc4 using evolve by test (Thu Jan 01 00:00:00 1970 +0000) | |
69 | |
70 $ hg olog --hidden --all 1 | |
71 @ 4d6fec23dcc4 (2) apricot | |
72 |\ | |
73 x | 3ba7db0ce860 (0) apple | |
74 / rewritten(description, content) as 4d6fec23dcc4 using amend by test (Thu Jan 01 00:00:00 1970 +0000) | |
75 | | |
76 x dd9b5dd30cd6 (1) banana | |
77 rewritten(description, parent, content) as 4d6fec23dcc4 using evolve by test (Thu Jan 01 00:00:00 1970 +0000) | |
78 |