From 132b3ef13dd11b463656c4a6b1caf29c029bc035 Mon Sep 17 00:00:00 2001 From: Grzegorz Dlugoszewski Date: Thu, 2 Jul 2020 09:39:35 +0200 Subject: [PATCH] Fix missing fetch call --- pkg/list.go | 7 ++++--- pkg/load.go | 9 ++++++++- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/pkg/list.go b/pkg/list.go index ec3c43e..9abf72a 100644 --- a/pkg/list.go +++ b/pkg/list.go @@ -23,7 +23,7 @@ func List(c *ListCfg) error { return err } - loaded := loadAll(paths) + loaded := loadAll(paths, c.Fetch) printables := make([]print.Printable, len(loaded)) for i := range loaded { @@ -45,14 +45,15 @@ func List(c *ListCfg) error { } // loadAll runs a separate goroutine to open, fetch (if asked to) and load status of git repo -func loadAll(paths []string) []*Loaded { +func loadAll(paths []string, fetch bool) []*Loaded { var ll []*Loaded loadedChan := make(chan *Loaded) for _, path := range paths { go func(path string) { - loadedChan <- Load(path) + + loadedChan <- Load(path, fetch) }(path) } diff --git a/pkg/load.go b/pkg/load.go index bca20fa..2524b85 100644 --- a/pkg/load.go +++ b/pkg/load.go @@ -17,7 +17,7 @@ type Loaded struct { } // Load reads status of a repository at a given path. -func Load(path string) *Loaded { +func Load(path string, fetch bool) *Loaded { loaded := &Loaded{ path: path, branches: make(map[string]string), @@ -30,6 +30,13 @@ func Load(path string) *Loaded { return loaded } + if fetch { + err = repo.Fetch() + if err != nil { + loaded.errors = append(loaded.errors, err.Error()) + } + } + loaded.current, err = repo.CurrentBranch() if err != nil { loaded.errors = append(loaded.errors, err.Error())