Как лучше всего начать писать ловушку для Mercurial?

Я ' m новичок в Mercurial и хотите написать несколько ловушек для предотвращения слияния определенных веток и т.п. Я ищу какой-нибудь учебник, который проходит через весь цикл.

Я просмотрел API и эти примеры , но все равно это сбивает с толку. Я всегда лучше учился через учебник / семинар, чем читая справочную страницу или что-то подобное.

Я могу понять, как работает пример кода, но как мне заставить Mercurial распознавать функции?

например) Я написал это, но не понимаю, как заставить Mercurial запускать код перед фиксацией.

def is_bad_branch_name(ui, repo, **kwargs):
    """
    Checks that a commit is always done on a named branch.
    This function enforces Projectplace's branching convention.
    @return: True if the branch name is invalid.
    @returntype: Boolean
    """
    branch = repo[None].branch()
    branch_names = r'(TT|AZ)(-#)(\d)+(:)[\s\w]*'
    acceptable_branch_names = re.compile(branch_names)
    if not acceptable_branch_names.match(branch):
        ui.warn('invalid branch name %r (use -#: )\n')
        return True
    return False

1
задан MdaG 22 September 2010 в 09:33
поделиться