summaryrefslogtreecommitdiff
path: root/doGit.go
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2025-11-01 10:24:59 -0500
committerJeff Carr <[email protected]>2025-11-01 10:24:59 -0500
commit1269abed5695348c75b3da9b30fbfb8420833de1 (patch)
tree51f5df006479df22458cd8a1c866c5a770bfd5df /doGit.go
parent82f0e82cbefbc56ef9cca1b5164b833d5eadeb31 (diff)
shortcut to init reposHEADv0.1.57master
Diffstat (limited to 'doGit.go')
-rw-r--r--doGit.go33
1 files changed, 24 insertions, 9 deletions
diff --git a/doGit.go b/doGit.go
index 9d4712b..f601ca7 100644
--- a/doGit.go
+++ b/doGit.go
@@ -20,10 +20,18 @@ import (
"go.wit.com/log"
)
-func doGitCreate(namespace string) (string, error) {
+// git clone https://cgit.grid.wit.com/lib/windows/cexample
+// go-clone --non-recursive --repo go.wit.com/lib/windows/cexample
+// git branch devel
+// git check devel
+// git push --set-upstream origin devel
+func doGitCreate(namespace string, template string) (string, error) {
var s string
var err error
- templateDir := "/var/lib/git/lib/templates/golib"
+ if template == "" {
+ template = "golib"
+ }
+ templateDir := filepath.Join("/var/lib/git/lib/templates", template)
if !shell.IsDir(templateDir) {
return "", errors.New("no template/golib")
}
@@ -32,12 +40,16 @@ func doGitCreate(namespace string) (string, error) {
return "", errors.New("dir " + fullpath + " already exists")
}
basepath, _ := filepath.Split(fullpath)
- if err := os.MkdirAll(basepath, os.ModePerm); err != nil {
- return "", err
+ if err = os.MkdirAll(basepath, os.ModePerm); err != nil {
+ return "mkdir failed", err
}
cmd := []string{"cp", "-a", templateDir, fullpath}
- shell.RunVerbose(cmd)
- return s, err
+ _, err = shell.RunVerbose(cmd)
+ if err != nil {
+ return "failed to create new repo", err
+ }
+ s = "created new repo"
+ return s, nil
}
func runCommand(cmds []string) (string, error) {
@@ -80,9 +92,12 @@ func doGit() (string, error) {
}
if argv.Git.Create != "" {
- s = "attmepting to create new repo"
- }
- if argv.Git.Template != "" {
+ s, err = doGitCreate(argv.Git.Create, argv.Git.Template)
+ if err == nil {
+ return "created new repo " + argv.Git.Create, nil
+ }
+ s = "attmepting to ssh?"
+ return s, err
}
if argv.Git.Edit != "" {