contrib/python-hook-examples.py
author Jens Bäckman <jens.backman@gmail.com>
Tue, 18 Aug 2009 08:49:41 +0200
changeset 9556 6aece8fc7f3c
parent 7918 62f11ef0df5b
child 13878 a8d13ee0ce68
permissions -rw-r--r--
i18n-sv: Start Swedish translation This is the starting point for the Swedish translation efforts. It currently contains only the help of the first 17 basic commands.

'''
Examples of useful python hooks for Mercurial.
'''
from mercurial import patch, util

def diffstat(ui, repo, **kwargs):
    '''Example usage:

    [hooks]
    commit.diffstat = python:/path/to/this/file.py:diffstat
    changegroup.diffstat = python:/path/to/this/file.py:diffstat
    '''
    if kwargs.get('parent2'):
        return
    node = kwargs['node']
    first = repo[node].parents()[0].node()
    if 'url' in kwargs:
        last = repo['tip'].node()
    else:
        last = node
    diff = patch.diff(repo, first, last)
    ui.write(patch.diffstat(util.iterlines(diff)))