Mercurial > evolve
annotate tests/test-evolve-issue5967.t @ 5135:731b5a89a784
touch: allow divergence with -A even if allowdivergence=no
1f92a6aa40d6 (evolve: add pre-check logic for content-divergence in
rewriteutil.precheck(), 2019-11-04) taught `rewriteutil.precheck()` to
check for divergence. It also set allowdivergence=yes in test-touch.t
to silence the error. However, if one does *not* have that set, it is
no longer possible to allow divergence with `hg touch -A`. This patch
fixes that.
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Tue, 04 Feb 2020 16:22:40 -0800 |
parents | de194ed973ba |
children | 591a0afd2ef3 |
rev | line source |
---|---|
4688
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
1 hg evolve --continue and obsmarkers after conflict resolution with no changes to commit (issue5967) |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
2 https://bz.mercurial-scm.org/show_bug.cgi?id=5967 |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
3 |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
4 $ . $TESTDIR/testlib/common.sh |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
5 |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
6 $ hg init issue5967 |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
7 $ cd issue5967 |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
8 $ cat > .hg/hgrc << EOF |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
9 > [alias] |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
10 > glog = log -GT "{rev}: {desc}" |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
11 > [extensions] |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
12 > evolve= |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
13 > EOF |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
14 |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
15 $ echo apple > a |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
16 $ hg ci -qAm 'apple' |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
17 $ echo banana > a |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
18 $ hg ci -m 'banana' |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
19 |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
20 Amending revision 0 in a way that causes conflicts |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
21 |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
22 $ hg prev |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
23 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
24 [0] apple |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
25 $ echo apricot > a |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
26 $ hg amend -m 'apricot' |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
27 1 new orphan changesets |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
28 |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
29 $ hg glog |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
30 @ 2: apricot |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
31 |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
32 * 1: banana |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
33 | |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
34 x 0: apple |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
35 |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
36 |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
37 Trying to evolve, then manually discarding changes from revision 1 |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
38 |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
39 $ hg evolve |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
40 move:[1] banana |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
41 atop:[2] apricot |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
42 merging a |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
43 warning: conflicts while merging a! (edit, then use 'hg resolve --mark') |
4706
de194ed973ba
branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4689
diff
changeset
|
44 unresolved merge conflicts |
de194ed973ba
branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4689
diff
changeset
|
45 (see 'hg help evolve.interrupted') |
4688
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
46 [1] |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
47 |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
48 $ echo apricot > a |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
49 $ hg resolve --mark a |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
50 (no more unresolved files) |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
51 continue: hg evolve --continue |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
52 |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
53 This will correctly notice that revision 1 can be dropped |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
54 |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
55 $ hg evolve --continue |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
56 evolving 1:dd9b5dd30cd6 "banana" |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
57 evolution of 1:dd9b5dd30cd6 created no changes to commit |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
58 working directory is now at 4d6fec23dcc4 |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
59 $ hg glog |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
60 @ 2: apricot |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
61 |
4689
27947b17cfaf
evolve: orphans that evolve into nothing don't need successors (issue5967)
Anton Shestakov <av6@dwimlabs.net>
parents:
4688
diff
changeset
|
62 |
27947b17cfaf
evolve: orphans that evolve into nothing don't need successors (issue5967)
Anton Shestakov <av6@dwimlabs.net>
parents:
4688
diff
changeset
|
63 This is important: 1 should not have a successor (especially not revision 2) |
27947b17cfaf
evolve: orphans that evolve into nothing don't need successors (issue5967)
Anton Shestakov <av6@dwimlabs.net>
parents:
4688
diff
changeset
|
64 |
4688
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
65 $ hg olog --all |
4689
27947b17cfaf
evolve: orphans that evolve into nothing don't need successors (issue5967)
Anton Shestakov <av6@dwimlabs.net>
parents:
4688
diff
changeset
|
66 @ 4d6fec23dcc4 (2) apricot |
4688
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
67 | |
4689
27947b17cfaf
evolve: orphans that evolve into nothing don't need successors (issue5967)
Anton Shestakov <av6@dwimlabs.net>
parents:
4688
diff
changeset
|
68 x 3ba7db0ce860 (0) apple |
27947b17cfaf
evolve: orphans that evolve into nothing don't need successors (issue5967)
Anton Shestakov <av6@dwimlabs.net>
parents:
4688
diff
changeset
|
69 rewritten(description, content) as 4d6fec23dcc4 using amend by test (Thu Jan 01 00:00:00 1970 +0000) |
4688
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
70 |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
71 $ hg olog --hidden --all 1 |
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
72 x dd9b5dd30cd6 (1) banana |
4689
27947b17cfaf
evolve: orphans that evolve into nothing don't need successors (issue5967)
Anton Shestakov <av6@dwimlabs.net>
parents:
4688
diff
changeset
|
73 pruned using evolve by test (Thu Jan 01 00:00:00 1970 +0000) |
4688
75329efe56a9
tests: demonstrate obsmarker creation after discarding conflicting changes
Anton Shestakov <av6@dwimlabs.net>
parents:
diff
changeset
|
74 |