Mercurial > hg
view tests/test-symlink-placeholder.t @ 17401:a826b1d7f5b2
zsh completion: add new options for existing commands
* backout: add --tool;
* bisect: add --extend;
* bookmarks: add --inactive;
* branches: add --closed;
* bundle: add --rev, --all, --branch;
* cat: add --decode;
* clone: add --updaterev, --branch, --pull and use common-with-qclone opts;
* commit: add --close-branch;
* diff: add --change, --reverse, --stat, --text, --unified;
* export: add --rev;
* grep: add --date;
* heads: add --topo, --closed;
* help: add --extension, --command, --keywords; complete additional help
topics also, not commands only;
* identify: add --bookmark and remote_opts;
* import: add --no-commit, --exact, --import-branch, --date, --user,
--similarity and commit options;
* log: add --user, --date, --stat, --git, --graph;
* manifest: add --rev;
* push: add --new-branch;
* resolve: add --all, --no-status, --tool and pattern options;
* revert: add --date;
* serve: add --prefix, --web-conf, --pid-file, --cmdserver, --certificate;
* status: add --change;
* tag: add --force, --edit, --remove;
* tip: add --git;
* update: add --check, --date.
author | Nikolaj Sjujskij <sterkrig@myopera.com> |
---|---|
date | Thu, 16 Aug 2012 19:03:01 +0400 |
parents | f2719b387380 |
children | 36f48c7d5944 |
line wrap: on
line source
$ "$TESTDIR/hghave" symlink || exit 80 Create extension that can disable symlink support: $ cat > nolink.py <<EOF > from mercurial import extensions, util > def setflags(orig, f, l, x): > pass > def checklink(orig, path): > return False > def extsetup(ui): > extensions.wrapfunction(util, 'setflags', setflags) > extensions.wrapfunction(util, 'checklink', checklink) > EOF $ hg init unix-repo $ cd unix-repo $ echo foo > a $ ln -s a b $ hg ci -Am0 adding a adding b $ cd .. Simulate a checkout shared on NFS/Samba: $ hg clone -q unix-repo shared $ cd shared $ rm b $ echo foo > b $ hg --config extensions.n=$TESTTMP/nolink.py status --debug ignoring suspect symlink placeholder "b" Make a clone using placeholders: $ hg --config extensions.n=$TESTTMP/nolink.py clone . ../win-repo updating to branch default 2 files updated, 0 files merged, 0 files removed, 0 files unresolved $ cd ../win-repo $ cat b a (no-eol) $ hg --config extensions.n=$TESTTMP/nolink.py st --debug Write binary data to the placeholder: >>> open('b', 'w').write('this is a binary\0') $ hg --config extensions.n=$TESTTMP/nolink.py st --debug ignoring suspect symlink placeholder "b" Write a long string to the placeholder: >>> open('b', 'w').write('this' * 1000) $ hg --config extensions.n=$TESTTMP/nolink.py st --debug ignoring suspect symlink placeholder "b" Commit shouldn't succeed: $ hg --config extensions.n=$TESTTMP/nolink.py ci -m1 nothing changed [1] Write a valid string to the placeholder: >>> open('b', 'w').write('this') $ hg --config extensions.n=$TESTTMP/nolink.py st --debug M b $ hg --config extensions.n=$TESTTMP/nolink.py ci -m1 $ hg manifest tip --verbose 644 a 644 @ b $ cd ..