diff options
Diffstat (limited to 'main.go')
| -rw-r--r-- | main.go | 48 |
1 files changed, 27 insertions, 21 deletions
@@ -7,7 +7,6 @@ package main import ( "embed" - "fmt" "strings" "time" @@ -45,8 +44,8 @@ func getVersion(repo *gitpb.Repo, name string) string { func main() { me = new(mainType) - prep.Bash(ARGNAME, argv.DoAutoComplete) // this line should be: prep.Bash(argv) - me.myGui = prep.Gui() // prepares the GUI package for go-args + prep.Bash2(ARGNAME, argv.DoAutoComplete) // this line should be: prep.Bash(argv) + me.myGui = prep.Gui() // prepares the GUI package for go-args me.pp = arg.MustParse(&argv) me.forge = forgepb.Init() @@ -158,28 +157,35 @@ func main() { } if argv.Merge != nil { - if argv.Merge.Devel != nil { - start := time.Now() - repos, err := doMergeDevel() - dur := time.Since(start) - if err != nil { - badExit(err) + 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("") } - 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) + 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("") } - log.Printf("Merged %d master branches in %s\n", repos.Len(), shell.FormatDuration(dur)) - okExit("") } - badExit(fmt.Errorf("You must choose which branch to merge to (devel or master)")) + repo := findCurrentPwdRepoOrDie() + if err := repoMergeToDevel(repo); err != nil { + badRepoExit(repo, err) + } + okExit("") } if argv.Pull != nil { |
