##// END OF EJS Templates
context: do not cache manifestctx...
context: do not cache manifestctx This will make sure when ctx.repo.manifestlog changes, a correct new manifestctx is returned. repo.manifestlog takes care of caching so the manifestctx won't be reconstructed every time.

File last commit:

r26587:56b2bcea default
r32519:6ae068f8 default
Show More
test-abort-checkin.t
37 lines | 870 B | text/troff | Tads3Lexer
/ tests / test-abort-checkin.t
$ cat > abortcommit.py <<EOF
> from mercurial import error
> def hook(**args):
> raise error.Abort("no commits allowed")
> def reposetup(ui, repo):
> repo.ui.setconfig("hooks", "pretxncommit.nocommits", hook)
> EOF
$ abspath=`pwd`/abortcommit.py
$ cat <<EOF >> $HGRCPATH
> [extensions]
> mq =
> abortcommit = $abspath
> EOF
$ hg init foo
$ cd foo
$ echo foo > foo
$ hg add foo
mq may keep a reference to the repository so __del__ will not be
called and .hg/journal.dirstate will not be deleted:
$ hg ci -m foo
error: pretxncommit.nocommits hook failed: no commits allowed
transaction abort!
rollback completed
abort: no commits allowed
[255]
$ hg ci -m foo
error: pretxncommit.nocommits hook failed: no commits allowed
transaction abort!
rollback completed
abort: no commits allowed
[255]
$ cd ..