diff options
Diffstat (limited to 'doStats.go')
| -rw-r--r-- | doStats.go | 57 |
1 files changed, 31 insertions, 26 deletions
@@ -21,6 +21,19 @@ import ( // c09c90d0a931888862262a6ed3753eed0af4ddca refs/pull/8/head func doStats(cmd *StatsCmd) (string, error) { + if cmd.All != nil { + fixed := me.forge.RunOnRepos(me.forge.Repos, doReload) + if fixed.Len() == 0 { + return "no git config changes", nil + } + + // show the changed repos & save cache .pb file + fixed = fixed.SortActual() + footer := me.forge.PrintErrorsTB(fixed) + me.forge.Repos.SaveVerbose() + return ".git/config problems: " + footer, nil + } + repo := workingDirToRepo() if repo == nil { return "no repo", errors.New("working dir isn't a repo I know about") @@ -46,6 +59,11 @@ func doStats(cmd *StatsCmd) (string, error) { return "remote refs table", nil } + if cmd.Reload { + err := doReload(repo) + return "doReload()", err + } + if cmd.CheckRefs { err := doCheckRefs(repo) return "checked refs", err @@ -79,19 +97,6 @@ func doStats(cmd *StatsCmd) (string, error) { if cmd.List { } - if cmd.All { - fixed := me.forge.RunOnRepos(me.forge.Repos, doUpdateRefs) - if fixed.Len() == 0 { - return "no git config changes", nil - } - - // show the changed repos & save cache .pb file - fixed = fixed.SortActual() - footer := me.forge.PrintErrorsTB(fixed) - me.forge.Repos.SaveVerbose() - return ".git/config problems: " + footer, nil - } - return "do what?", nil } @@ -111,19 +116,6 @@ func doCheckRefs(r *gitpb.Repo) error { return nil } -func doUpdateRefs(r *gitpb.Repo) error { - stats, err := r.LoadRefs() - if err != nil { - return err - } - - footer := stats.PrintTableLimit(2) - log.Info("stats footer:", footer) - - err = r.UpdateRefs(stats) - return err -} - func doCheckRemote(r *gitpb.Repo) error { for _, rmote := range r.Config.Remotes { morestats, err := r.MakeRemote(rmote.Name) @@ -158,6 +150,19 @@ func doCheckRemoteRefs(r *gitpb.Repo) error { return nil } +func doUpdateRefs(r *gitpb.Repo) error { + stats, err := r.LoadRefs() + if err != nil { + return err + } + + footer := stats.PrintTableLimit(2) + log.Info("stats footer:", footer) + + err = r.UpdateRefs(stats) + return err +} + func doUpdateRemote(r *gitpb.Repo) error { for _, rmote := range r.Config.Remotes { err := r.UpdateRemote(rmote.Name) |
