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