summaryrefslogtreecommitdiff
path: root/repo.merge.go
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2025-01-05 12:02:54 -0600
committerJeff Carr <[email protected]>2025-01-05 12:02:54 -0600
commit22b157f6d7a269bd592c5d907ca2e8c0d189928e (patch)
tree41121a73a96a3672942c382d856ccf039f1a53ba /repo.merge.go
parentbab03875d20859e047f9ae2b3e406c64fd79fc64 (diff)
add merge things
Diffstat (limited to 'repo.merge.go')
-rw-r--r--repo.merge.go44
1 files changed, 44 insertions, 0 deletions
diff --git a/repo.merge.go b/repo.merge.go
new file mode 100644
index 0000000..9507459
--- /dev/null
+++ b/repo.merge.go
@@ -0,0 +1,44 @@
+package gitpb
+
+import (
+ "github.com/go-cmd/cmd"
+ "go.wit.com/log"
+)
+
+func (rs *Repo) MergeUserToDevel() (*cmd.Status, error) {
+ startbranch := rs.GetCurrentBranchName()
+ devel := rs.GetDevelBranchName()
+ user := rs.GetUserBranchName()
+
+ log.Info("MergeUserToDevel() checking out", devel, "started on", startbranch, "merge", user)
+
+ var all [][]string
+ all = append(all, []string{"git", "checkout", devel})
+ all = append(all, []string{"git", "merge", user})
+ all = append(all, []string{"git", "push"})
+
+ if result, err := rs.RunStrictAll(all); err != nil {
+ log.Log(GITPBWARN, "MergeUserToDevel() failed", rs.GetFullPath())
+ return result, err
+ }
+ return nil, nil
+}
+
+func (rs *Repo) MergeDevelToMaster() (*cmd.Status, error) {
+ startbranch := rs.GetCurrentBranchName()
+ devel := rs.GetDevelBranchName()
+ main := rs.GetMasterBranchName()
+
+ log.Info("MergeDevelToMaster() checking out", main, "started on", startbranch, "merge", devel)
+
+ var all [][]string
+ all = append(all, []string{"git", "checkout", main})
+ all = append(all, []string{"git", "merge", devel})
+ all = append(all, []string{"git", "push"})
+
+ if result, err := rs.RunStrictAll(all); err != nil {
+ log.Log(GITPBWARN, "MergeDevelToMaster() failed", rs.GetFullPath())
+ return result, err
+ }
+ return nil, nil
+}