record: check that we are not committing a merge before patch selection
It might sound like a good idea to use record to filter changes when merging.
If someone attemps this, it's better to tell her "no" right ahead, before the
patch generation/line selection, so she does not spend time doing it just to
receive a red light after that (sometimes rather long) process.
#!/bin/sh
# test parents command
hg init repo
cd repo
echo % no working directory
hg parents
echo a > a
echo b > b
hg ci -Amab -d '0 0'
echo a >> a
hg ci -Ama -d '1 0'
echo b >> b
hg ci -Amb -d '2 0'
echo c > c
hg ci -Amc -d '3 0'
hg up -C 1
echo d > c
hg ci -Amc2 -d '4 0'
hg up -C 3
echo % hg parents
hg parents
echo % hg parents a
hg parents a
echo % hg parents c, single revision
hg parents c
echo % hg parents -r 3 c
hg parents -r 3 c
echo % hg parents -r 2
hg parents -r 2
echo % hg parents -r 2 a
hg parents -r 2 a
echo % hg parents -r 2 ../a
hg parents -r 2 ../a
echo '% cd dir; hg parents -r 2 ../a'
mkdir dir
cd dir
hg parents -r 2 ../a
echo '% hg parents -r 2 path:a'
hg parents -r 2 path:a
echo '% hg parents -r 2 glob:a'
cd ..
hg parents -r 2 glob:a
echo % merge working dir with 2 parents, hg parents c
HGMERGE=true hg merge
hg parents c
echo % merge working dir with 1 parent, hg parents
hg up -C 2
HGMERGE=true hg merge -r 4
hg parents
echo % merge working dir with 1 parent, hg parents c
hg parents c
true