60 lines
1.4 KiB
Go
60 lines
1.4 KiB
Go
|
// Package command ...
|
||
|
//
|
||
|
// Description : command ...
|
||
|
//
|
||
|
// Author : go_developer@163.com<白茶清欢>
|
||
|
//
|
||
|
// Date : 2022-06-14 20:02
|
||
|
package command
|
||
|
|
||
|
import "git.zhangdeman.cn/zhangdeman/command/define"
|
||
|
|
||
|
// Git ...
|
||
|
//
|
||
|
// Author : go_developer@163.com<白茶清欢>
|
||
|
//
|
||
|
// Date : 20:09 2022/6/14
|
||
|
func Git(workDir string, gitCmdPath string) *git {
|
||
|
if len(gitCmdPath) == 0 {
|
||
|
gitCmdPath = "git"
|
||
|
}
|
||
|
return &git{
|
||
|
workDir: workDir,
|
||
|
gitCmdPath: gitCmdPath,
|
||
|
}
|
||
|
}
|
||
|
|
||
|
type git struct {
|
||
|
workDir string
|
||
|
gitCmdPath string
|
||
|
}
|
||
|
|
||
|
// Init 对应 git init 命令
|
||
|
//
|
||
|
// Author : go_developer@163.com<白茶清欢>
|
||
|
//
|
||
|
// Date : 20:10 2022/6/14
|
||
|
func (g *git) Init() *define.Result {
|
||
|
// 删除已有git信息
|
||
|
_ = Dir(g.workDir).Delete(".git")
|
||
|
return Execute(g.workDir, g.gitCmdPath, []string{"init"})
|
||
|
}
|
||
|
|
||
|
// RemoteAddOrigin 对应 git remote add origin xxxx 命令
|
||
|
//
|
||
|
// Author : go_developer@163.com<白茶清欢>
|
||
|
//
|
||
|
// Date : 20:20 2022/6/14
|
||
|
func (g *git) RemoteAddOrigin(gitRepoAddress string) *define.Result {
|
||
|
return Execute(g.workDir, g.gitCmdPath, []string{"remote", "add", "origin", gitRepoAddress})
|
||
|
}
|
||
|
|
||
|
// SetUpstreamOrigin 对应 git push --set-upstream origin xxx 命令
|
||
|
//
|
||
|
// Author : go_developer@163.com<白茶清欢>
|
||
|
//
|
||
|
// Date : 20:22 2022/6/14
|
||
|
func (g *git) SetUpstreamOrigin(origin string) *define.Result {
|
||
|
return Execute(g.workDir, g.gitCmdPath, []string{"push", "--set-upstream ", "origin", origin})
|
||
|
}
|