prepush: add more precise error messages
Part of the patch is from timeless@mozdev.org
- indicate the branch name where there are multiple heads
- give better advice when hitting a possible race, where new heads are added
between discovery and the call to branchmap(). In that case, asking the user
to merge isn't helpful, since only remote has the changes.
#!/bin/sh
"$TESTDIR/hghave" svn svn-bindings || exit 80
echo "[extensions]" >> $HGRCPATH
echo "convert = " >> $HGRCPATH
echo "graphlog =" >> $HGRCPATH
svnadmin create svn-repo
cat "$TESTDIR/svn/branches.svndump" | svnadmin load svn-repo > /dev/null
echo % convert trunk and branches
cat >branchmap <<EOF
old3 newbranch
EOF
hg convert --branchmap=branchmap --datesort -r 10 svn-repo A-hg
echo % convert again
hg convert --branchmap=branchmap --datesort svn-repo A-hg
cd A-hg
hg glog --template 'branch={branches} {rev} {desc|firstline} files: {files}\n'
hg branches | sed 's/:.*/:/'
hg tags -q
cd ..
echo '% test hg failing to call itself'
HG=foobar hg convert svn-repo B-hg 2>&1 | grep itself