summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2025-02-09 14:18:18 -0600
committerJeff Carr <[email protected]>2025-02-09 14:18:18 -0600
commitbb54c065adc7734c533a54c819ada8591e9a0a9c (patch)
tree2ed4a4f726b51adf2de48479529c23dbeeb656df
parent11d1136797e889f6b840d1fbd4a5911258a16cc3 (diff)
check for the terrible situation of devel < masterv0.0.74
-rw-r--r--reloadRepoState.go21
1 files changed, 20 insertions, 1 deletions
diff --git a/reloadRepoState.go b/reloadRepoState.go
index 9536234..b6cb20a 100644
--- a/reloadRepoState.go
+++ b/reloadRepoState.go
@@ -6,6 +6,17 @@ import (
"go.wit.com/log"
)
+// count all objects only in branch1
+func (repo *Repo) countDiffObjects(branch1, branch2 string) int {
+ cmd := repo.ConstructGitDiffLog(branch1, branch2)
+ r, err := repo.RunVerboseOnError(cmd)
+ if err != nil {
+ return -1
+ }
+ // log.Info("countDiffObjects()", cmd, len(r.Stdout), strings.Join(r.Stdout, " "))
+ return len(r.Stdout)
+}
+
func (repo *Repo) setRepoState() {
if repo == nil {
return
@@ -23,7 +34,15 @@ func (repo *Repo) setRepoState() {
}
}
if repo.GetDevelVersion() != repo.GetMasterVersion() {
- repo.State = "merge to main"
+ b1 := repo.countDiffObjects(repo.GetMasterBranchName(), repo.GetDevelBranchName())
+ if b1 == 0 {
+ repo.State = "merge to main"
+ // log.Info("master vs devel count is normal b1 == 0", b1)
+ } else {
+ repo.State = "DEVEL < MASTER"
+ // log.Info("master vs devel count b1 != 0", b1)
+ log.Info("SERIOUS ERROR. DEVEL BRANCH NEEDS MERGE FROM MASTER b1 ==", b1, repo.GetGoPath())
+ }
return
}
// if IsGoTagVersionGreater(oldtag string, newtag string) bool {