diff options
Diffstat (limited to 'doPull.go')
| -rw-r--r-- | doPull.go | 41 |
1 files changed, 41 insertions, 0 deletions
@@ -1,10 +1,50 @@ package main import ( + "time" + + "go.wit.com/lib/gui/shell" "go.wit.com/lib/protobuf/gitpb" "go.wit.com/log" ) +func rillPull(repo *gitpb.Repo) error { + if repo.IsDirty() { + // never do dirty repos + return nil + } + t, _ := repo.LastGitPull() + if time.Since(t) < time.Hour { + if argv.Verbose { + log.Info(repo.GetFullPath(), "git pulled too recently", shell.FormatDuration(time.Since(t))) + } + return nil + } + + var cmd []string + cmd = append(cmd, "git", "pull") + _, err := repo.RunVerbose(cmd) + if err != nil { + log.Info(repo.GetFullPath(), "git pull err:", err) + } + return nil +} + +// is every repo on the devel branch? + +func doGitPullNew() { + now := time.Now() + me.forge.RillFuncError(rillPull) + count := me.forge.RillReload() + if count != 0 { + me.forge.ConfigSave() + } + + total, count, nope, _ := IsEverythingOnMaster() + log.Printf("Master branch check. %d total repos. (%d git pulled) (%d not on master branch) (%s)\n", total, count, nope, shell.FormatDuration(time.Since(now))) +} + +/* func doGitPull() { allerr := me.found.RillGitPull(40, 5) @@ -29,6 +69,7 @@ func doGitPull() { } } +*/ // git fetch origin master:master func rillFetchMaster(repo *gitpb.Repo) error { |
