Mercurial > evolve
view tests/test-evolve-phase.t @ 3847:8bad32e1e6c1
evolve: introduce a dirstatedance() fn to fix dirstate after parent change
This patch introduces a dirstatedance() function which will be used after fixing
the dirstate when we change parents using repo.dirstate.setparents().
Look at docs added for more details.
author | Pulkit Goyal <7895pulkit@gmail.com> |
---|---|
date | Wed, 13 Jun 2018 18:08:57 +0530 |
parents | f0096db2a7b1 |
children | 629558d09898 |
line wrap: on
line source
Testing the handling of phases for `hg evolve` command $ cat >> $HGRCPATH <<EOF > [phases] > publish = False > [alias] > glog = log -G --template='{rev} - {node|short} {desc} ({phase})\n' > [extensions] > EOF $ echo "evolve=$(echo $(dirname $TESTDIR))/hgext3rd/evolve/" >> $HGRCPATH Testing when there are no conflicts during evolve $ hg init noconflict $ cd noconflict $ echo a>a $ hg ci -Aqm a $ echo b>b $ hg ci -Aqm b $ echo c>c $ hg ci -Aqsm c $ hg glog @ 2 - 177f92b77385 c (secret) | o 1 - d2ae7f538514 b (draft) | o 0 - cb9a9f314b8b a (draft) $ hg prev 0 files updated, 0 files merged, 1 files removed, 0 files unresolved [1] b $ echo b2>b $ hg amend 1 new orphan changesets $ hg evolve move:[2] c atop:[3] b working directory is now at 813dde83a7f3 $ hg glog @ 4 - 813dde83a7f3 c (secret) | o 3 - fd89d0f19529 b (draft) | o 0 - cb9a9f314b8b a (draft) $ cd .. Testing case when there are conflicts (bug 5720) $ hg init conflicts $ cd conflicts $ echo a > a $ hg ci -Am a adding a $ echo b > a $ hg ci -m b $ echo c > a $ hg ci -sm c $ hg glog @ 2 - 13833940840c c (secret) | o 1 - 1e6c11564562 b (draft) | o 0 - cb9a9f314b8b a (draft) $ 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 glog @ 3 - 87495ea7c9ec b (draft) | | * 2 - 13833940840c c (secret) | | | x 1 - 1e6c11564562 b (draft) |/ o 0 - cb9a9f314b8b a (draft) $ hg evolve move:[2] c atop:[3] b merging a warning: conflicts while merging a! (edit, then use 'hg resolve --mark') abort: fix conflicts and see `hg help evolve.interrupted` [255] $ hg diff diff -r 87495ea7c9ec a --- a/a Thu Jan 01 00:00:00 1970 +0000 +++ b/a Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +1,5 @@ +<<<<<<< destination: 87495ea7c9ec - test: b b2 +======= +c +>>>>>>> evolving: 13833940840c - test: c $ hg glog @ 3 - 87495ea7c9ec b (draft) | | * 2 - 13833940840c c (secret) | | | x 1 - 1e6c11564562 b (draft) |/ o 0 - cb9a9f314b8b a (draft) $ echo c2 > a $ hg resolve -m (no more unresolved files) continue: hg evolve --continue $ hg evolve -c evolving 2:13833940840c "c" working directory is now at 3d2080c198e5 $ hg glog @ 4 - 3d2080c198e5 c (secret) | o 3 - 87495ea7c9ec b (draft) | o 0 - cb9a9f314b8b a (draft)