hgext/churn.py
changeset 9254 db13255617b3
parent 9205 83132980e9cd
child 9321 d7b6429c5ad4
equal deleted inserted replaced
9253:d6d811d90976 9254:db13255617b3
    92 
    92 
    93 
    93 
    94 def churn(ui, repo, *pats, **opts):
    94 def churn(ui, repo, *pats, **opts):
    95     '''histogram of changes to the repository
    95     '''histogram of changes to the repository
    96 
    96 
    97     This command will display a histogram representing the number of changed
    97     This command will display a histogram representing the number
    98     lines or revisions, grouped according to the given template. The default
    98     of changed lines or revisions, grouped according to the given
    99     template will group changes by author. The --dateformat option may be used
    99     template. The default template will group changes by author.
   100     to group the results by date instead.
   100     The --dateformat option may be used to group the results by
       
   101     date instead.
   101 
   102 
   102     Statistics are based on the number of changed lines, or alternatively the
   103     Statistics are based on the number of changed lines, or
   103     number of matching revisions if the --changesets option is specified.
   104     alternatively the number of matching revisions if the
       
   105     --changesets option is specified.
   104 
   106 
   105     Examples::
   107     Examples::
   106 
   108 
   107       # display count of changed lines for every committer
   109       # display count of changed lines for every committer
   108       hg churn -t '{author|email}'
   110       hg churn -t '{author|email}'
   114       hg churn -f '%Y-%m' -s -c
   116       hg churn -f '%Y-%m' -s -c
   115 
   117 
   116       # display count of lines changed in every year
   118       # display count of lines changed in every year
   117       hg churn -f '%Y' -s
   119       hg churn -f '%Y' -s
   118 
   120 
   119     It is possible to map alternate email addresses to a main address by
   121     It is possible to map alternate email addresses to a main address
   120     providing a file using the following format::
   122     by providing a file using the following format::
   121 
   123 
   122       <alias email> <actual email>
   124       <alias email> <actual email>
   123 
   125 
   124     Such a file may be specified with the --aliases option, otherwise a
   126     Such a file may be specified with the --aliases option, otherwise
   125     .hgchurn file will be looked for in the working directory root.
   127     a .hgchurn file will be looked for in the working directory root.
   126     '''
   128     '''
   127     def pad(s, l):
   129     def pad(s, l):
   128         return (s + " " * l)[:l]
   130         return (s + " " * l)[:l]
   129 
   131 
   130     amap = {}
   132     amap = {}