Mercurial > evolve
view tests/test-evolve-serveronly-legacy.t @ 4247:820a25dcea58
next: make next command --evolve by default
Before this patch, if we need to evolve to update to the next child,
we were suggesting the user to use --evolve flag. This patch make some
changes to evolve by default in that conditions.
After making next command to evolve by default we have to consider
the following points:
1) If we don't need to evolve while updating to the next child:
a) And if wdir is dirty, we suggest to use --merge flag
b) if wdir is clean, we simply update to next child (if ambiguous,
prompt the user to select one)
2) If we need to evolve:
a) when wdir is dirty, we suggest the user to use `hg shelve` first,
to make wdir clean. As we don't support --merge while evovling.
b) when wdir is clean, we evolve the next cset.
Changes made in test-prev-next.t reflect the changed behaviour.
author | Sushil khanchi <sushilkhanchi97@gmail.com> |
---|---|
date | Sat, 10 Nov 2018 15:50:05 +0100 |
parents | 79a926b557f1 |
children | e1a230cc4527 e5d91fd1f319 |
line wrap: on
line source
$ . ${TESTDIR}/testlib/pythonpath.sh $ cat >> $HGRCPATH <<EOF > [defaults] > amend=-d "0 0" > [web] > push_ssl = false > allow_push = * > [phases] > publish = False > [experimental] > bundle2-exp=False # < Mercurial-4.0 > [devel] > legacy.exchange=bundle1 > [extensions] > EOF $ mkcommit() { > echo "$1" > "$1" > hg add "$1" > hg ci -m "add $1" > } $ hg init server Try the multiple ways to setup the extension $ hg -R server log --config 'extensions.evolve.serveronly=' $ hg -R server log --config "extensions.evolve.serveronly=${SRCDIR}/hgext3rd/evolve/serveronly.py" $ PYTHONPATH=$HGTEST_ORIG_PYTHONPATH hg -R server log --config "extensions.evolve.serveronly=${SRCDIR}/hgext3rd/evolve/serveronly.py" setup repo $ echo "[extensions]" >> ./server/.hg/hgrc $ echo "evolve.serveronly=" >> ./server/.hg/hgrc $ hg serve -R server -n test -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log --traceback $ cat hg.pid >> $DAEMON_PIDS $ hg clone http://localhost:$HGPORT/ client no changes found updating to branch default 0 files updated, 0 files merged, 0 files removed, 0 files unresolved $ cat ./errors.log $ echo "[extensions]" >> ./client/.hg/hgrc $ echo "evolve=" >> ./client/.hg/hgrc $ cp -r client other Smoke testing =============== $ cd client $ mkcommit 0 $ mkcommit a $ hg push pushing to http://localhost:$HGPORT/ searching for changes abort: remote error: incompatible Mercurial client; bundle2 required (see https://www.mercurial-scm.org/wiki/IncompatibleClient) [255] $ cat ../errors.log