package main import ( "flag" "log" "os" "golang.org/x/mod/module" "golang.org/x/mod/zip" ) func main() { modName := flag.String("mod", "", "Module name") version := flag.String("version", "", "Version") root := flag.String("vcs", "", "Path to VCS root") sub := flag.String("sub", "", "Optional subdirectory path") flag.Parse() err := zip.CreateFromVCS( os.Stdout, module.Version{Path: *modName, Version: *version}, *root, *version, *sub, ) if err != nil { log.Fatal(err) } }