Add symlink method to util.opener.
Differences from os.symlink:
- the symlink name is relative to the opener base directory
- if a file with that name already exists, it's removed
- if necessary, parent directories are created
- if the system (OS or filesystem) doesn't support symlinks, a
regular file is created. Its contents are the symlink target.
#!/bin/sh
# a test for issue586
hg init a
cd a
echo a > a
hg ci -Ama
hg init ../b
cd ../b
echo b > b
hg ci -Amb
hg pull -f ../a
hg merge
hg rm -f a
hg ci -Amc
hg st -A