commit: save commit message so it's not destroyed by rollback.
(
issue1635)
Rationale: if a pretxncommit hook rejects this commit, the transaction
is rolled back and the user's commit message is irrevocably lost.
So save a copy in .hg/last-message.txt, just in case. Also handy if
the user deliberately rolls back a commit in order to amend it.
#!/bin/sh
hg init
echo a > a
hg ci -Amadd # 0
chmod +x a
hg ci -mexecutable # 1
hg up 0
rm a
ln -s symlink a
hg ci -msymlink # 2
hg merge --debug
echo % symlink is local parent, executable is other
if [ -h a ]; then
echo a is a symlink
$TESTDIR/readlink.py a
elif [ -x a ]; then
echo a is executable
else
echo "a has no flags (default for conflicts)"
fi
hg update -C 1
hg merge --debug
echo % symlink is other parent, executable is local
if [ -h a ]; then
echo a is a symlink
$TESTDIR/readlink.py a
elif [ -x a ]; then
echo a is executable
else
echo "a has no flags (default for conflicts)"
fi