2024-03-07 16:45:49 -06:00
|
|
|
package main
|
|
|
|
|
|
|
|
/*
|
|
|
|
this parses the command line arguements
|
|
|
|
|
|
|
|
this enables command line options from other packages like 'gui' and 'log'
|
|
|
|
*/
|
|
|
|
|
|
|
|
type args struct {
|
2024-03-21 19:43:26 -05:00
|
|
|
Repo string `arg:"positional" help:"go import path"`
|
2024-03-21 22:47:17 -05:00
|
|
|
// Work bool `arg:"--work" help:"make a work directory"`
|
2024-03-21 19:43:26 -05:00
|
|
|
NoWork bool `arg:"--no-work" help:"do not make or modify the go.work file"`
|
2024-03-21 22:47:17 -05:00
|
|
|
GoSrc bool `arg:"--go-src" help:"only work in ~/go/src"`
|
2024-03-21 19:43:26 -05:00
|
|
|
DryRun bool `arg:"--dry-run" help:"show what would be run"`
|
|
|
|
Recursive bool `arg:"--recursive" help:"resursively clone all dependencies"`
|
2024-03-07 16:45:49 -06:00
|
|
|
}
|
|
|
|
|
2024-03-07 22:07:40 -06:00
|
|
|
func (a args) Description() string {
|
2024-03-07 16:45:49 -06:00
|
|
|
return `
|
2024-03-21 22:47:17 -05:00
|
|
|
By default, go-clone will find your go.work file and work from there.
|
|
|
|
Otherwise, it will create a work/ directory.
|
|
|
|
|
2024-03-21 19:43:26 -05:00
|
|
|
This will recursively clone the sources for this app into a work/ directory:
|
2024-10-12 13:47:06 -05:00
|
|
|
go-clone --recursive go.wit.com/apps/go-clone
|
2024-03-07 16:45:49 -06:00
|
|
|
|
2024-10-12 13:47:06 -05:00
|
|
|
This will recursively clone the sources 'the old way' into ~/go/src:
|
|
|
|
go-clone --recursive --go-src --no-work go.wit.com/apps/go-clone
|
2024-03-21 19:43:26 -05:00
|
|
|
`
|
2024-03-07 16:45:49 -06:00
|
|
|
}
|
|
|
|
|
|
|
|
func (args) Version() string {
|
2024-03-21 19:43:26 -05:00
|
|
|
return "go-clone " + Version
|
2024-03-07 16:45:49 -06:00
|
|
|
}
|