evolve: fixed lock acquire before checking state
Before checking the states `repo.lock()` and `repo.wlock()` need
to be acquired. This was not happening in `evolve()` earlier.
This patch creates a seperate `_performevolve()` funtion which
can be then called with locks acquired.
This also removes the redundant lock acuquiring of `abortevolve`
and `continueevolve` as lock is now taken earlier.
#!/bin/bash
set -euox pipefail
unset GREP_OPTIONS
NOTOPIC="--config experimental.topic-mode=ignore"
compatbranches=`hg branches --quiet | grep 'mercurial-' | grep -v ':' | sort -n --reverse`
prev='stable'
for branch in $compatbranches; do
hg up $branch
hg merge $prev
hg commit -m "test-compat: merge $prev into $branch"
prev=$branch
done