view tests/test-archive-symlinks @ 5390:36c46e20976a

merge: provide *_ISLINK environment vars to merge helper Sets HG_MY_ISLINK, HG_OTHER_ISLINK, HG_BASE_ISLINK in environment. Without these variables, it's impossible for the merge application to know whether the 'other' and 'base' files were symlinks in their original contexts. For the purposes of the merge they are always emitted as small text files.
author Patrick Mezard <pmezard@gmail.com>
date Wed, 03 Oct 2007 23:09:36 +0200
parents 92d7ce0da063
children
line wrap: on
line source

#!/bin/sh

"$TESTDIR/hghave" symlink || exit 80

origdir=`pwd`

cat >> readlink.py <<EOF
import os
import sys

for f in sys.argv[1:]:
    print f, '->', os.readlink(f)
EOF

hg init repo
cd repo
ln -s nothing dangling
hg ci -qAm 'add symlink'

hg archive -t files ../archive
hg archive -t tar -p tar ../archive.tar
hg archive -t zip -p zip ../archive.zip

echo '% files'
cd "$origdir"
cd archive
python ../readlink.py dangling

echo '% tar'
cd "$origdir"
tar xf archive.tar
cd tar
python ../readlink.py dangling

echo '% zip'
cd "$origdir"
unzip archive.zip > /dev/null
cd zip
python ../readlink.py dangling