Mercurial > hg > mercurial-crew-with-dirclash
view tests/test-excessive-merge @ 2155:ff255b41b4aa
support hooks written in python.
to write hook in python, create module with hook function inside.
make sure mercurial can import module (put it in $PYTHONPATH or load it
as extension). hook function should look like this:
def myhook(ui, repo, hooktype, **kwargs):
if hook_passes:
return True
elif hook_explicitly_fails:
return False
elif some_other_failure:
import util
raise util.Abort('helpful failure message')
else:
return
# implicit return of None makes hook fail!
then in .hgrc, add hook with "python:" prefix:
[hooks]
commit = python:mymodule.myhook
author | Vadim Gelfer <vadim.gelfer@gmail.com> |
---|---|
date | Fri, 28 Apr 2006 15:50:22 -0700 |
parents | 7544700fd931 |
children | e506c14382fd |
line wrap: on
line source
#!/bin/sh hg init echo foo > a echo foo > b hg add a b hg ci -m "test" -d "1000000 0" echo blah > a hg ci -m "branch a" -d "1000000 0" hg co 0 echo blah > b hg ci -m "branch b" -d "1000000 0" HGMERGE=true hg up -m 1 hg ci -m "merge b/a -> blah" -d "1000000 0" hg co 1 HGMERGE=true hg up -m 2 hg ci -m "merge a/b -> blah" -d "1000000 0" hg log hg debugindex .hg/00changelog.i echo echo 1 hg manifest 1 echo 2 hg manifest 2 echo 3 hg manifest 3 echo 4 hg manifest 4 echo hg debugindex .hg/data/a.i hg verify