@@ -52,6 +52,7 @@ const Usage = `usage: git-sizer [OPTS]
52
52
prefix (e.g., '--exclude=refs/notes')
53
53
--exclude-regexp pattern don't process references matching the specified
54
54
regular expression
55
+ --show-refs show which refs are being included/excluded
55
56
56
57
Regular expression patterns must match the full reference name.
57
58
@@ -166,6 +167,7 @@ func mainImplementation(args []string) error {
166
167
var progress bool
167
168
var version bool
168
169
var filter git.IncludeExcludeFilter
170
+ var showRefs bool
169
171
170
172
flags := pflag .NewFlagSet ("git-sizer" , pflag .ContinueOnError )
171
173
flags .Usage = func () {
@@ -241,6 +243,7 @@ func mainImplementation(args []string) error {
241
243
atty = false
242
244
}
243
245
flags .BoolVar (& progress , "progress" , atty , "report progress to stderr" )
246
+ flags .BoolVar (& showRefs , "show-refs" , false , "list the references being processed" )
244
247
flags .BoolVar (& version , "version" , false , "report the git-sizer version number" )
245
248
flags .Var (& NegatedBoolValue {& progress }, "no-progress" , "suppress progress output" )
246
249
flags .Lookup ("no-progress" ).NoOptDefVal = "true"
@@ -292,7 +295,23 @@ func mainImplementation(args []string) error {
292
295
293
296
var historySize sizes.HistorySize
294
297
295
- historySize , err = sizes .ScanRepositoryUsingGraph (repo , filter .Filter , nameStyle , progress )
298
+ var refFilter git.ReferenceFilter = filter .Filter
299
+
300
+ if showRefs {
301
+ oldRefFilter := refFilter
302
+ fmt .Fprintf (os .Stderr , "References (included references marked with '+'):\n " )
303
+ refFilter = func (ref git.Reference ) bool {
304
+ b := oldRefFilter (ref )
305
+ if b {
306
+ fmt .Fprintf (os .Stderr , "+ %s\n " , ref .Refname )
307
+ } else {
308
+ fmt .Fprintf (os .Stderr , " %s\n " , ref .Refname )
309
+ }
310
+ return b
311
+ }
312
+ }
313
+
314
+ historySize , err = sizes .ScanRepositoryUsingGraph (repo , refFilter , nameStyle , progress )
296
315
if err != nil {
297
316
return fmt .Errorf ("error scanning repository: %s" , err )
298
317
}
0 commit comments