Mercurial > evolve
view tests/test-issue-5720.t @ 3577:279d8b610ac5
evolve: add a `--stop` flag for `hg evolve` command
This patch adds a `--stop` flag for `hg evolve` command. The stop flag lets you
stop the evolution from where you are and let you move to other things if you
want. This fuctionality is great as user can decide to resolve conflicts later
on, stop the command execution, do something else and get back once they has
time or care about resolving them.
As implementation details, it clears the evolvestate, updates to the parent of
working directory clearing the uncommitted changes which also deletes the
mergestate.
A new test file test-evolve-stop.t is added with tests of the new flag added.
author | Pulkit Goyal <7895pulkit@gmail.com> |
---|---|
date | Tue, 20 Mar 2018 18:41:31 +0530 |
parents | 14cd04ff968e |
children | d5adce52cef4 f6979d64b9fb |
line wrap: on
line source
This test file test the #5720 issue Check that `hg evolve --continue` doesn't change changeset phase from secret to draft after a merge conflict. https://bz.mercurial-scm.org/show_bug.cgi?id=5720 Global setup ============ $ . $TESTDIR/testlib/common.sh $ cat >> $HGRCPATH <<EOF > [ui] > interactive = true > [phases] > publish=False > [extensions] > evolve = > EOF Test ==== $ hg init $TESTTMP/issue-5720 $ cd $TESTTMP/issue-5720 Create two drafts commits and one secret $ echo a > a $ hg commit -Am a adding a $ echo b > a $ hg commit -m b $ echo c > a $ hg commit --secret -m c $ hg log -G -T "{rev}: {phase}" @ 2: secret | o 1: draft | o 0: draft Amend the second draft with new content $ hg prev 1 files updated, 0 files merged, 0 files removed, 0 files unresolved [1] b $ echo b2 > a $ hg amend 1 new orphan changesets $ hg log -G -T "{rev}: {phase}" @ 3: draft | | * 2: secret | | | x 1: draft |/ o 0: draft Evolve which triggers a conflict $ hg evolve move:[2] c atop:[3] b merging a warning: conflicts while merging a! (edit, then use 'hg resolve --mark') evolve failed! fix conflict and run 'hg evolve --continue' or use 'hg update -C .' to abort abort: unresolved merge conflicts (see hg help resolve) [255] Fix the conflict $ echo c2 > a $ hg resolve -m (no more unresolved files) continue: hg evolve --continue Continue the evolution $ hg evolve --continue evolving 2:13833940840c "c" working directory is now at 3d2080c198e5 Tip should stay in secret phase $ hg log -G -T "{rev}: {phase}" @ 4: secret | o 3: draft | o 0: draft $ hg log -r . -T '{phase}\n' secret