1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
|
#!/bin/sh
"$TESTDIR/hghave" symlink || exit 80
echo "[extensions]" >> $HGRCPATH
echo "mq=" >> $HGRCPATH
hg init
hg qinit
hg qnew base.patch
echo aaa > a
echo bbb > b
echo ccc > c
hg add a b c
hg qrefresh
$TESTDIR/readlink.py a
echo '% test replacing a file with a symlink'
hg qnew symlink.patch
rm a
ln -s b a
hg qrefresh --git
$TESTDIR/readlink.py a
hg qpop
hg qpush
$TESTDIR/readlink.py a
echo '% test updating a symlink'
rm a
ln -s c a
hg qnew --git -f updatelink
$TESTDIR/readlink.py a
hg qpop
hg qpush --debug
$TESTDIR/readlink.py a
hg st
echo '% test replacing a symlink with a file'
ln -s c s
hg add s
hg qnew --git -f addlink
rm s
echo sss > s
hg qnew --git -f replacelinkwithfile
hg qpop
hg qpush
cat s
hg st
echo '% test symlink removal'
hg qnew removesl.patch
hg rm a
hg qrefresh --git
hg qpop
hg qpush
hg st -c
echo '% replace broken symlink with another broken symlink'
ln -s linka linka
hg add linka
hg qnew link
hg mv linka linkb
rm linkb
ln -sf linkb linkb
hg qnew movelink
hg qpop
hg qpush
$TESTDIR/readlink.py linkb
echo '% check patch does not overwrite untracked symlinks'
hg qpop
ln -s linkbb linkb
hg qpush
true
|