equal
deleted
inserted
replaced
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 = {} |