summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doMerge.go49
-rw-r--r--main.go31
2 files changed, 51 insertions, 29 deletions
diff --git a/doMerge.go b/doMerge.go
index 7831f52..48dd717 100644
--- a/doMerge.go
+++ b/doMerge.go
@@ -4,12 +4,61 @@
package main
import (
+ "time"
+
"go.wit.com/lib/config"
+ "go.wit.com/lib/gui/shell"
"go.wit.com/lib/protobuf/forgepb"
"go.wit.com/lib/protobuf/gitpb"
"go.wit.com/log"
)
+func doMerge() error {
+ if argv.All == true {
+ start := time.Now()
+ repos, err := doMergeDevel()
+ dur := time.Since(start)
+ if err != nil {
+ badExit(err)
+ }
+ log.Printf("Merged %d devel branches in %s\n", repos.Len(), shell.FormatDuration(dur))
+
+ start = time.Now()
+ repos, err = doMergeMaster()
+ dur = time.Since(start)
+ if err != nil {
+ badExit(err)
+ }
+ log.Printf("Merged %d master branches in %s\n", repos.Len(), shell.FormatDuration(dur))
+ okExit("")
+ }
+ if argv.Merge.Devel != nil {
+ start := time.Now()
+ repos, err := doMergeDevel()
+ dur := time.Since(start)
+ if err != nil {
+ badExit(err)
+ }
+ log.Printf("Merged %d devel branches in %s\n", repos.Len(), shell.FormatDuration(dur))
+ okExit("")
+ }
+ if argv.Merge.Master != nil {
+ start := time.Now()
+ repos, err := doMergeMaster()
+ dur := time.Since(start)
+ if err != nil {
+ badExit(err)
+ }
+ log.Printf("Merged %d master branches in %s\n", repos.Len(), shell.FormatDuration(dur))
+ okExit("")
+ }
+ repo := findCurrentPwdRepoOrDie()
+ if err := repoMergeToDevel(repo); err != nil {
+ badRepoExit(repo, err)
+ }
+ return nil
+}
+
func doMergeReport() *forgepb.Patches {
found := forgepb.NewPatches()
for repo := range me.forge.Repos.IterAll() {
diff --git a/main.go b/main.go
index 451fdba..6b14522 100644
--- a/main.go
+++ b/main.go
@@ -8,10 +8,8 @@ package main
import (
"embed"
"strings"
- "time"
"go.wit.com/lib/gui/prep"
- "go.wit.com/lib/gui/shell"
"go.wit.com/lib/protobuf/forgepb"
"go.wit.com/lib/protobuf/gitpb"
"go.wit.com/log"
@@ -157,33 +155,8 @@ func main() {
}
if argv.Merge != nil {
- if argv.All == true {
-
- if argv.Merge.Devel != nil {
- start := time.Now()
- repos, err := doMergeDevel()
- dur := time.Since(start)
- if err != nil {
- badExit(err)
- }
- log.Printf("Merged %d devel branches in %s\n", repos.Len(), shell.FormatDuration(dur))
- okExit("")
- }
-
- if argv.Merge.Master != nil {
- start := time.Now()
- repos, err := doMergeMaster()
- dur := time.Since(start)
- if err != nil {
- badExit(err)
- }
- log.Printf("Merged %d master branches in %s\n", repos.Len(), shell.FormatDuration(dur))
- okExit("")
- }
- }
- repo := findCurrentPwdRepoOrDie()
- if err := repoMergeToDevel(repo); err != nil {
- badRepoExit(repo, err)
+ if err := doMerge(); err != nil {
+ badExit(err)
}
okExit("")
}