summaryrefslogtreecommitdiff
path: root/doStats.go
diff options
context:
space:
mode:
Diffstat (limited to 'doStats.go')
-rw-r--r--doStats.go57
1 files changed, 31 insertions, 26 deletions
diff --git a/doStats.go b/doStats.go
index 1988970..e932fc1 100644
--- a/doStats.go
+++ b/doStats.go
@@ -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)