0
0
mirror of https://github.com/thegeeklab/wp-git-clone.git synced 2024-11-29 04:50:35 +00:00
wp-git-clone/git/submodule.go

29 lines
513 B
Go
Raw Normal View History

2023-12-22 23:59:23 +00:00
package git
import (
"github.com/thegeeklab/wp-plugin-go/v2/types"
2023-12-22 23:59:23 +00:00
"golang.org/x/sys/execabs"
)
// SubmoduleUpdate recursively initializes and updates submodules.
func (r *Repository) SubmoduleUpdate() *types.Cmd {
2023-12-22 23:59:23 +00:00
args := []string{
"submodule",
"update",
"--init",
"--recursive",
}
if r.SubmodulePartial {
2023-12-22 23:59:23 +00:00
args = append(args, "--depth=1", "--recommend-shallow")
}
if r.SubmoduleRemote {
args = append(args, "--remote")
2023-12-22 23:59:23 +00:00
}
return &types.Cmd{
Cmd: execabs.Command(gitBin, args...),
}
2023-12-22 23:59:23 +00:00
}