Mercurial > hg-stable
view tests/test-symlinks @ 3914:283ee8971570
doc string fix: hg cat and manifest default to current parent revision.
author | Thomas Arendsen Hein <thomas@intevation.de> |
---|---|
date | Sat, 16 Dec 2006 22:33:39 +0100 |
parents | 0f550b87deb8 |
children | 9dcf9d45cab8 |
line wrap: on
line source
#!/bin/sh #Test bug regarding symlinks that showed up in hg 0.7 #Author: Matthew Elder <sseses@gmail.com> #make and initialize repo hg init test; cd test; #make a file and a symlink touch foo; ln -s foo bar; #import with addremove -- symlink walking should _not_ screwup. hg addremove #commit -- the symlink should _not_ appear added to dir state hg commit -m 'initial' #add a new file so hg will let me commit again touch bomb #again, symlink should _not_ show up on dir state hg addremove #Assert screamed here before, should go by without consequence hg commit -m 'is there a bug?' cd .. ; rm -rf test hg init test; cd test; mkdir dir touch a.c dir/a.o dir/b.o # test what happens if we want to trick hg hg commit -A -m 0 echo "relglob:*.o" > .hgignore rm a.c rm dir/a.o rm dir/b.o mkdir dir/a.o ln -s nonexist dir/b.o mkfifo a.c # it should show a.c, dir/a.o and dir/b.o deleted hg status hg status a.c echo '# test absolute path through symlink outside repo' cd .. p=`pwd` hg init x ln -s x y cd x touch f hg add f hg status $p/y/f echo '# try symlink outside repo to file inside' ln -s x/f ../z # this should fail hg status ../z && { echo hg mistakenly exited with status 0; exit 1; } || :