summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2025-09-25 15:45:32 -0500
committerJeff Carr <[email protected]>2025-09-25 15:45:32 -0500
commitf4838d750004b951c6e2f3affab44560a2827b19 (patch)
treeb021008a0430621fbdcd442d3bfda841c77f84d8
parent3bdf0143be9634d40dd0c7f8cc2181c38ae2dd0c (diff)
add 'fix' flagv0.25.28
-rw-r--r--argv.go1
-rw-r--r--doClean.go26
-rw-r--r--doNormal.go21
3 files changed, 17 insertions, 31 deletions
diff --git a/argv.go b/argv.go
index f165752..0e8dd1d 100644
--- a/argv.go
+++ b/argv.go
@@ -67,6 +67,7 @@ type RepoCmd struct {
}
type NormalCmd struct {
+ Fix *EmptyCmd `arg:"subcommand:fix" help:"try to fix problems"`
On *EmptyCmd `arg:"subcommand:on" help:"turn normal mode on"`
Off *EmptyCmd `arg:"subcommand:off" help:"turn normal mode off"`
}
diff --git a/doClean.go b/doClean.go
index ce87f7f..192e148 100644
--- a/doClean.go
+++ b/doClean.go
@@ -94,17 +94,18 @@ func doClean() error {
// when publishing, clean out the details of that if it's still there
if repo.GetTargetVersion() != "" {
repo.SetTargetVersion("")
- configSave = true
}
// try to delete user
if err := doRepoCleanUser(repo); err != nil {
if err == ErrorBranchUnique {
- bname := repo.GetUserBranchName()
- s := fmt.Sprintf("delete this odd user %bname branch %s?", bname, repo.FullPath)
- if fhelp.QuestionUser(s) {
- repo.RunVerbose([]string{"git", "branch", "-D", bname})
- // repo.RunVerbose([]string{"git", "checkout", bname})
+ if argv.Clean.Fix != nil {
+ bname := repo.GetUserBranchName()
+ s := fmt.Sprintf("delete this odd user (%s) branch %s?", bname, repo.FullPath)
+ if fhelp.QuestionUser(s) {
+ repo.RunVerbose([]string{"git", "branch", "-D", bname})
+ // repo.RunVerbose([]string{"git", "checkout", bname})
+ }
}
} else {
log.Info(repo.GetGoPath(), err)
@@ -187,13 +188,14 @@ func doRepoCleanDevel(repo *gitpb.Repo) error {
}
if err := justDeleteTheDevelBranchAlready(repo); err != nil {
log.Info("justDeleteTheDevel() err", repo.GetGoPath(), err)
- bname := repo.GetDevelBranchName()
- s := fmt.Sprintf("delete this odd devel %bname branch %s?", bname, repo.FullPath)
- if fhelp.QuestionUser(s) {
- repo.RunVerbose([]string{"git", "branch", "-D", bname})
- // repo.RunVerbose([]string{"git", "checkout", bname})
+ if argv.Clean.Fix != nil {
+ bname := repo.GetDevelBranchName()
+ s := fmt.Sprintf("delete this odd devel (%s) branch %s?", bname, repo.FullPath)
+ if fhelp.QuestionUser(s) {
+ repo.RunVerbose([]string{"git", "branch", "-D", bname})
+ // repo.RunVerbose([]string{"git", "checkout", bname})
+ }
}
- configSave = true
return err
}
return nil
diff --git a/doNormal.go b/doNormal.go
index 1f4b53e..9838d25 100644
--- a/doNormal.go
+++ b/doNormal.go
@@ -15,7 +15,6 @@ import (
"go.wit.com/lib/config"
"go.wit.com/lib/fhelp"
"go.wit.com/lib/gui/shell"
- "go.wit.com/lib/protobuf/forgepb"
"go.wit.com/lib/protobuf/gitpb"
"go.wit.com/log"
)
@@ -35,7 +34,7 @@ func doNormal() bool {
}
repo := me.forge.Repos.FindByFullPath(path)
if stat.Err == ErrorLocalDevelBranch {
- if me.forge.Config.Mode == forgepb.ForgeMode_NORMAL {
+ if argv.Normal.Fix != nil {
bname := repo.GetDevelBranchName()
s := fmt.Sprintf("repair the %s branch on %s", bname, repo.FullPath)
if fhelp.QuestionUser(s) {
@@ -46,7 +45,7 @@ func doNormal() bool {
}
}
if stat.Err == ErrorLocalMasterBranch {
- if me.forge.Config.Mode == forgepb.ForgeMode_NORMAL {
+ if argv.Normal.Fix != nil {
bname := repo.GetMasterBranchName()
s := fmt.Sprintf("repair the %s branch on %s", bname, repo.FullPath)
if fhelp.QuestionUser(s) {
@@ -125,25 +124,9 @@ func checkNormalRepoState(repo *gitpb.Repo) error {
if !repo.VerifyRemoteAndLocalBranches(repo.GetDevelBranchName()) {
return ErrorLocalDevelBranch
- /*
- bname := repo.GetDevelBranchName()
- s := fmt.Sprintf("repair the %s branch on %s", bname, repo.FullPath)
- if fhelp.QuestionUser(s) {
- repo.RunVerbose([]string{"git", "branch", "-D", bname})
- repo.RunVerbose([]string{"git", "checkout", bname})
- }
- */
}
if !repo.VerifyRemoteAndLocalBranches(repo.GetMasterBranchName()) {
return ErrorLocalMasterBranch
- /*
- bname := repo.GetMasterBranchName()
- s := fmt.Sprintf("repair the %s branch on %s", bname, repo.FullPath)
- if fhelp.QuestionUser(s) {
- repo.RunVerbose([]string{"git", "branch", "-D", bname})
- repo.RunVerbose([]string{"git", "checkout", bname})
- }
- */
}
if repo.GetCurrentBranchName() != repo.GetUserBranchName() {