diff --git a/doPull.go b/doPull.go index bacaf8e..e2d33ae 100644 --- a/doPull.go +++ b/doPull.go @@ -4,24 +4,22 @@ package main import ( + "time" + + "go.wit.com/lib/gui/shell" "go.wit.com/lib/protobuf/forgepb" "go.wit.com/lib/protobuf/gitpb" "go.wit.com/log" ) // is every repo on the devel branch? -func doGitPull() error { - if me.forge.Config.Mode != forgepb.ForgeMode_MASTER { - if argv.Force == true { - log.Info("okay. you have forced the issue") - } else { - log.Info("forge requres being on the master branch") - log.Info("you must run:") - log.Info("") - log.Info("forge checkout master") - log.Info("") - return nil - } +func doPull() error { + if me.forge.Config.Mode == forgepb.ForgeMode_NORMAL { + log.Info("you must check out the devel or master branches") + return nil + } + if argv.Force == true { + log.Info("okay. you have forced the issue") } // stats := me.forge.RillFuncError(rillPull) @@ -39,3 +37,54 @@ func doGitPull() error { return nil } + +func rillPull(repo *gitpb.Repo) error { + if repo.IsDirty() { + // never do dirty repos + return nil + } + t, _ := repo.LastGitPull() + if time.Since(t) < time.Minute*10 && !argv.Force { + if argv.Verbose { + log.Info(repo.GetFullPath(), "git pulled too recently", shell.FormatDuration(time.Since(t))) + } + return nil + } + cur := repo.GetCurrentBranchName() + if !repo.IsBranchRemote(cur) { + if argv.Verbose { + log.Info(repo.GetFullPath(), "branch is not remote", cur) + } + 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 +} + +/* +// git fetch origin master:master +func rillFetchMaster(repo *gitpb.Repo) error { + if repo.GetCurrentBranchName() != repo.GetUserBranchName() { + // only fetch when branch is on the user branch + return nil + } + branch := repo.GetMasterBranchName() + cmd := []string{"git", "fetch", "origin", branch + ":" + branch} + err := repo.RunVerbose(cmd) + return err +} + +func doGitFetch() { + me.forge.RillFuncError(rillFetchMaster) + count := me.forge.RillReload() + if count != 0 { + me.forge.ConfigSave() + } +} +*/ diff --git a/doPullOld.go b/doPullOld.go deleted file mode 100644 index fc0ef18..0000000 --- a/doPullOld.go +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2017-2025 WIT.COM Inc. All rights reserved. -// Use of this source code is governed by the GPL 3.0 - -package main - -/* -func rillPull(repo *gitpb.Repo) error { - if repo.IsDirty() { - // never do dirty repos - return nil - } - t, _ := repo.LastGitPull() - if time.Since(t) < time.Minute*10 && !argv.Force { - if argv.Verbose { - log.Info(repo.GetFullPath(), "git pulled too recently", shell.FormatDuration(time.Since(t))) - } - return nil - } - cur := repo.GetCurrentBranchName() - if !repo.IsBranchRemote(cur) { - if argv.Verbose { - log.Info(repo.GetFullPath(), "branch is not remote", cur) - } - 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 -} - -// git fetch origin master:master -func rillFetchMaster(repo *gitpb.Repo) error { - if repo.GetCurrentBranchName() != repo.GetUserBranchName() { - // only fetch when branch is on the user branch - return nil - } - branch := repo.GetMasterBranchName() - cmd := []string{"git", "fetch", "origin", branch + ":" + branch} - err := repo.RunVerbose(cmd) - return err -} - -func doGitFetch() { - me.forge.RillFuncError(rillFetchMaster) - count := me.forge.RillReload() - if count != 0 { - me.forge.ConfigSave() - } -} -*/ diff --git a/main.go b/main.go index 5227630..af7741d 100644 --- a/main.go +++ b/main.go @@ -212,7 +212,7 @@ func main() { } if argv.Pull != nil { - doGitPull() + doPull() okExit("") }