Mercurial > evolve
annotate tests/test-issue-5720.t @ 6130:cd07d6bd4e2a
cmdrewrite: a new `hg fixup` command
This new command can be used to amend specific revisions with working copy
changes.
Implementation-wise what it basically does is:
1) commit working directory changes
2) relocate the new commit onto the target commit
3) fold them into one.
After the run, the working directory parent will be the obsoleted changeset
created in step 1 and descendants of the target will become orphans.
author | Sushil khanchi <sushilkhanchi97@gmail.com> |
---|---|
date | Wed, 03 Nov 2021 22:59:17 +0530 |
parents | 61d2f1cf90f0 |
children | 8e4f6354b316 |
rev | line source |
---|---|
3379
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
1 This test file test the #5720 issue |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
2 |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
3 Check that `hg evolve --continue` doesn't change changeset phase from secret |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
4 to draft after a merge conflict. |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
5 |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
6 https://bz.mercurial-scm.org/show_bug.cgi?id=5720 |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
7 |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
8 Global setup |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
9 ============ |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
10 |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
11 $ . $TESTDIR/testlib/common.sh |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
12 $ cat >> $HGRCPATH <<EOF |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
13 > [ui] |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
14 > interactive = true |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
15 > [phases] |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
16 > publish=False |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
17 > [extensions] |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
18 > evolve = |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
19 > EOF |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
20 |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
21 Test |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
22 ==== |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
23 |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
24 $ hg init $TESTTMP/issue-5720 |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
25 $ cd $TESTTMP/issue-5720 |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
26 |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
27 Create two drafts commits and one secret |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
28 $ echo a > a |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
29 $ hg commit -Am a |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
30 adding a |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
31 $ echo b > a |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
32 $ hg commit -m b |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
33 $ echo c > a |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
34 $ hg commit --secret -m c |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
35 $ hg log -G -T "{rev}: {phase}" |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
36 @ 2: secret |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
37 | |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
38 o 1: draft |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
39 | |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
40 o 0: draft |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
41 |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
42 Amend the second draft with new content |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
43 $ hg prev |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
44 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
45 [1] b |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
46 $ echo b2 > a |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
47 $ hg amend |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
48 1 new orphan changesets |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
49 $ hg log -G -T "{rev}: {phase}" |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
50 @ 3: draft |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
51 | |
3417
d3a17c67f85c
branching: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
3411
diff
changeset
|
52 | * 2: secret |
3379
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
53 | | |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
54 | x 1: draft |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
55 |/ |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
56 o 0: draft |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
57 |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
58 Evolve which triggers a conflict |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
59 $ hg evolve |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
60 move:[2] c |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
61 atop:[3] b |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
62 merging a |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
63 warning: conflicts while merging a! (edit, then use 'hg resolve --mark') |
4676
b6c819facbe8
evolvecmd: the proper way to deal with conflicts is to resolve them
Anton Shestakov <av6@dwimlabs.net>
parents:
4577
diff
changeset
|
64 unresolved merge conflicts |
b6c819facbe8
evolvecmd: the proper way to deal with conflicts is to resolve them
Anton Shestakov <av6@dwimlabs.net>
parents:
4577
diff
changeset
|
65 (see 'hg help evolve.interrupted') |
5714
b3d9e6c805d6
tests: update with more detailed exit codes
Martin von Zweigbergk <martinvonz@google.com>
parents:
5691
diff
changeset
|
66 [240] |
3379
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
67 |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
68 Fix the conflict |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
69 $ echo c2 > a |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
70 $ hg resolve -m |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
71 (no more unresolved files) |
3472
05bd493d496d
evolve: add evolve info to cmdutil.afterresolvedstates
Pulkit Goyal <7895pulkit@gmail.com>
parents:
3417
diff
changeset
|
72 continue: hg evolve --continue |
3379
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
73 |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
74 Continue the evolution |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
75 $ hg evolve --continue |
3386
2a51107e60cf
evolve: add a utility fn to check validity of opts passed to `hg evolve`
Pulkit Goyal <7895pulkit@gmail.com>
parents:
3379
diff
changeset
|
76 evolving 2:13833940840c "c" |
3379
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
77 |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
78 Tip should stay in secret phase |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
79 $ hg log -G -T "{rev}: {phase}" |
4577
bcd52ce0916d
evolve: don't update after instability resolution by default (BC)
Anton Shestakov <av6@dwimlabs.net>
parents:
3852
diff
changeset
|
80 o 4: secret |
3379
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
81 | |
4577
bcd52ce0916d
evolve: don't update after instability resolution by default (BC)
Anton Shestakov <av6@dwimlabs.net>
parents:
3852
diff
changeset
|
82 @ 3: draft |
3379
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
83 | |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
84 o 0: draft |
ef475fce0dd2
test: add a test to reproduce issue 5720
Boris Feld <boris.feld@octobus.net>
parents:
diff
changeset
|
85 |
4577
bcd52ce0916d
evolve: don't update after instability resolution by default (BC)
Anton Shestakov <av6@dwimlabs.net>
parents:
3852
diff
changeset
|
86 $ hg log -r tip -T '{phase}\n' |
3388
be41e4740a25
evolve: use phases.new-commit config to retain phase information (issue5720)
Pulkit Goyal <7895pulkit@gmail.com>
parents:
3386
diff
changeset
|
87 secret |