summaryrefslogtreecommitdiff
path: root/ideas/revert.go
diff options
context:
space:
mode:
Diffstat (limited to 'ideas/revert.go')
-rw-r--r--ideas/revert.go41
1 files changed, 41 insertions, 0 deletions
diff --git a/ideas/revert.go b/ideas/revert.go
new file mode 100644
index 0000000..5a080e9
--- /dev/null
+++ b/ideas/revert.go
@@ -0,0 +1,41 @@
+package repostatus
+
+// reverts master to devel
+// used in the unwind process of making GUI releases
+/*
+func (rs *RepoStatus) RevertMasterToDevel() bool {
+ if rs.CheckDirty() {
+ log.Info("sorry, it's still dirty")
+ return false
+ }
+
+ curName := rs.GetCurrentBranchName()
+ dName := rs.GetDevelBranchName()
+ mName := rs.GetMasterBranchName()
+ if curName != mName {
+ log.Info("repo is not working from main branch", curName, "!=", mName)
+ return false
+ }
+
+ log.Info("reset master to devel", curName, rs.String())
+
+ var all [][]string
+ all = append(all, []string{"git", "checkout", dName}) // switch to the devel branch
+ all = append(all, []string{"git", "branch", "-D", mName})
+ all = append(all, []string{"git", "branch", mName}) // make a master branch based on devel
+ all = append(all, []string{"git", "checkout", mName})
+ all = append(all, []string{"git", "push", "--set-upstream", "--force", "origin", mName})
+
+ // don't do anything with tags here
+ // all = append(all, []string{"git", "tag", "--delete", release.version.String()})
+ // all = append(all, []string{"git", "push", "--delete", "origin", release.version.String()})
+
+ if rs.DoAll(all) {
+ log.Info("EVERYTHING OK. RERELEASED", rs.String())
+ return true
+ }
+
+ log.Info("SOMETHING FAILED")
+ return false
+}
+*/