Mercurial > evolve
diff tests/test-evolve-noupdate.t @ 3914:96945ea908df stable
branching: merge default into stable
The stable branch of Mercurial core now contains Mercurial 4.7 so evolve branch
policy requires this merge. The @ bookmark is in the right location, so people
doing clone will get to the latest release.
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Tue, 31 Jul 2018 12:52:06 +0200 |
parents | 4736d0bb81bf |
children | d00f0c369bc7 4eb3877540f1 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/test-evolve-noupdate.t Tue Jul 31 12:52:06 2018 +0200 @@ -0,0 +1,126 @@ +Testing the `--no-update` flag to `hg evolve` command +===================================================== + +There is an `--update` flag to `hg evolve` command which defaults to True. The +`--update` flag updates to the head of the evolved revisions. If you dont want +to change your working directory or update your working directory to its +sucessor after hg evolve, `hg evolve --no-update` is the thing for you. + +This patch tests that flag. + +Setup +----- + + $ cat >> $HGRCPATH <<EOF + > [alias] + > glog = log -GT "{rev}:{node|short} {desc}\n ({bookmarks}) {phase}" + > [extensions] + > EOF + $ echo "evolve=$(echo $(dirname $TESTDIR))/hgext3rd/evolve/" >> $HGRCPATH + + $ hg init stoprepo + $ cd stoprepo + $ echo ".*\.orig" > .hgignore + $ hg add .hgignore + $ hg ci -m "added hgignore" + $ for ch in a b c d; do echo foo > $ch; hg add $ch; hg ci -qm "added "$ch; done; + + $ hg glog + @ 4:c41c793e0ef1 added d + | () draft + o 3:ca1b80f7960a added c + | () draft + o 2:b1661037fa25 added b + | () draft + o 1:c7586e2a9264 added a + | () draft + o 0:8fa14d15e168 added hgignore + () draft + +Making sure we stay where we were is current wdir parent is not obsoleted +-------------------------------------------------------------------------- + + $ hg up .^^ + 0 files updated, 0 files merged, 2 files removed, 0 files unresolved + $ echo bar > b + $ hg amend + 2 new orphan changesets + $ hg glog + @ 5:7ed0642d644b added b + | () draft + | * 4:c41c793e0ef1 added d + | | () draft + | * 3:ca1b80f7960a added c + | | () draft + | x 2:b1661037fa25 added b + |/ () draft + o 1:c7586e2a9264 added a + | () draft + o 0:8fa14d15e168 added hgignore + () draft + +There is 'working directory is now at' message because it didnt changed + $ hg evolve --all --no-update + move:[3] added c + atop:[5] added b + move:[4] added d + atop:[6] added c + + $ hg glog + o 7:b6b20b8eefdc added d + | () draft + o 6:7c46f743e62f added c + | () draft + @ 5:7ed0642d644b added b + | () draft + o 1:c7586e2a9264 added a + | () draft + o 0:8fa14d15e168 added hgignore + () draft + +Updating to successor when working directory parent is obsoleted by evolution +----------------------------------------------------------------------------- + + $ hg prev + 0 files updated, 0 files merged, 1 files removed, 0 files unresolved + [1] added a + $ echo bar > a + $ hg amend + 3 new orphan changesets + $ hg up 7ed0642d644b + 2 files updated, 0 files merged, 0 files removed, 0 files unresolved + + $ hg glog + o 8:3d41537b44ca added a + | () draft + | * 7:b6b20b8eefdc added d + | | () draft + | * 6:7c46f743e62f added c + | | () draft + | @ 5:7ed0642d644b added b + | | () draft + | x 1:c7586e2a9264 added a + |/ () draft + o 0:8fa14d15e168 added hgignore + () draft + + $ hg evolve --all --any --no-update + move:[5] added b + atop:[8] added a + move:[6] added c + atop:[9] added b + move:[7] added d + atop:[10] added c + working directory is now at 12c720cb3782 + + $ hg glog + o 11:a74d9f22ba3f added d + | () draft + o 10:958f5155e8cd added c + | () draft + @ 9:12c720cb3782 added b + | () draft + o 8:3d41537b44ca added a + | () draft + o 0:8fa14d15e168 added hgignore + () draft