bzr Как создать коммит хук?

Я пытаюсь сделать свой первый коммит хук, и он не работает. Я получил идею отсюда http://doc.bazaar.canonical.com/beta/en/user-guide/hooks.html

То, что я пытаюсь сделать, это начать с создания своего собственного сообщения о коммите. но это не работает. пожалуйста, вы можете помочь?

Я сделал файл под названием Python commit_hook.py

from bzrlib import branch


def my_commit_hook(push_result):
    print "I made this and the new revno is %d" % commit_result.new_revno


branch.Branch.hooks.install_named_hook('post_commit', post_commit_hook,
                                 'My post_commit hook')

Я поместил файл commit_hook.py в мою скрытую папку.bzr в моем хранилище. Я сделал каталог плагинов? это верно?

.bzr/
├── 
├── branch-format
├── branch-lock
├── plugins
│   └── commit_hook.py
├── README

1 ответ

Решение

Согласно документам:

post_commit вызывается с помощью (local, master, old_revno, old_revid, new_revno, new_revid).

Следовательно,

def my_commit_hook(local, master, old_revno, old_revid, 
                   new_revno, new_revid):

Также, post_commit_hook должно быть my_commit_hook:

branch.Branch.hooks.install_named_hook('post_commit', 
                                       my_commit_hook,
                                       'My post_commit hook')
Другие вопросы по тегам