mirror of
				https://github.com/therootcompany/go-gitver.git
				synced 2024-11-16 17:08:59 +00:00 
			
		
		
		
	Compare commits
	
		
			No commits in common. "3409d5f2e49f62e6edb6739cd80df4a051bf86a2" and "1ee983f56d83f70c3648fe8e771fbfee46be04b4" have entirely different histories.
		
	
	
		
			3409d5f2e4
			...
			1ee983f56d
		
	
		
							
								
								
									
										3
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| @ -2,8 +2,7 @@ xversion.go | ||||
| zversion.go | ||||
| 
 | ||||
| /go-gitver | ||||
| hello | ||||
| examples/*/*.sum | ||||
| examples/**.sum | ||||
| 
 | ||||
| # ---> Go | ||||
| # Binaries for programs and plugins | ||||
|  | ||||
							
								
								
									
										34
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										34
									
								
								README.md
									
									
									
									
									
								
							| @ -17,14 +17,14 @@ Goals: | ||||
| 
 | ||||
| # GoDoc | ||||
| 
 | ||||
| See <https://pkg.go.dev/git.rootprojects.org/root/go-gitver/v2>. | ||||
| See <https://pkg.go.dev/git.rootprojects.org/root/go-gitver>. | ||||
| 
 | ||||
| # How it works | ||||
| 
 | ||||
| 1. You define the fallback version and version printing in `main.go`: | ||||
| 
 | ||||
| ```go | ||||
| //go:generate go run git.rootprojects.org/root/go-gitver/v2 | ||||
| //go:generate go run git.rootprojects.org/root/go-gitver | ||||
| 
 | ||||
| package main | ||||
| 
 | ||||
| @ -42,7 +42,7 @@ func main() { | ||||
| } | ||||
| ``` | ||||
| 
 | ||||
| 2. You `go generate` or `go run git.rootprojects.org/root/go-gitver/v2` to generate `xversion.go`: | ||||
| 2. You `go generate` or `go run git.rootprojects.org/root/go-gitver` to generate `xversion.go`: | ||||
| 
 | ||||
| ```go | ||||
| package main | ||||
| @ -59,7 +59,7 @@ func init() { | ||||
| Generate an `xversion.go` file: | ||||
| 
 | ||||
| ```bash | ||||
| go run git.rootprojects.org/root/go-gitver/v2 | ||||
| go run git.rootprojects.org/root/go-gitver | ||||
| cat xversion.go | ||||
| ``` | ||||
| 
 | ||||
| @ -81,7 +81,7 @@ most other files.</small> | ||||
| See `go-gitver`s self-generated version: | ||||
| 
 | ||||
| ```bash | ||||
| go run git.rootprojects.org/root/go-gitver/v2 version | ||||
| go run git.rootprojects.org/root/go-gitver version | ||||
| ``` | ||||
| 
 | ||||
| ```txt | ||||
| @ -95,7 +95,7 @@ v1.1.4-pre2+g6dace82 | ||||
| Add this to the top of your main file, so that it runs with `go generate`: | ||||
| 
 | ||||
| ```go | ||||
| //go:generate go run -mod=vendor git.rootprojects.org/root/go-gitver/v2 | ||||
| //go:generate go run -mod=vendor git.rootprojects.org/root/go-gitver | ||||
| 
 | ||||
| ``` | ||||
| 
 | ||||
| @ -106,7 +106,7 @@ Add a file that imports go-gitver (for versioning) | ||||
| 
 | ||||
| package example | ||||
| 
 | ||||
| import _ "git.rootprojects.org/root/go-gitver/v2" | ||||
| import _ "git.rootprojects.org/root/go-gitver" | ||||
| ``` | ||||
| 
 | ||||
| Change you build instructions to be something like this: | ||||
| @ -138,12 +138,12 @@ GITVER_FAIL=true | ||||
| For example: | ||||
| 
 | ||||
| ```go | ||||
| //go:generate go run -mod=vendor git.rootprojects.org/root/go-gitver/v2 --fail | ||||
| //go:generate go run -mod=vendor git.rootprojects.org/root/go-gitver --fail | ||||
| 
 | ||||
| ``` | ||||
| 
 | ||||
| ```bash | ||||
| go run -mod=vendor git.rootprojects.org/root/go-gitver/v2 version | ||||
| go run -mod=vendor git.rootprojects.org/root/go-gitver version | ||||
| ``` | ||||
| 
 | ||||
| # Usage | ||||
| @ -152,9 +152,9 @@ See `examples/basic` | ||||
| 
 | ||||
| 1. Create a `tools` package in your project | ||||
| 2. Guard it against regular builds with `// +build tools` | ||||
| 3. Include `_ "git.rootprojects.org/root/go-gitver/v2"` in the imports | ||||
| 3. Include `_ "git.rootprojects.org/root/go-gitver"` in the imports | ||||
| 4. Declare `var commit, version, date string` in your `package main` | ||||
| 5. Include `//go:generate go run -mod=vendor git.rootprojects.org/root/go-gitver/v2` as well | ||||
| 5. Include `//go:generate go run -mod=vendor git.rootprojects.org/root/go-gitver` as well | ||||
| 
 | ||||
| `tools/tools.go`: | ||||
| 
 | ||||
| @ -165,14 +165,14 @@ See `examples/basic` | ||||
| package tools | ||||
| 
 | ||||
| import ( | ||||
| 	_ "git.rootprojects.org/root/go-gitver/v2" | ||||
| 	_ "git.rootprojects.org/root/go-gitver" | ||||
| ) | ||||
| ``` | ||||
| 
 | ||||
| `main.go`: | ||||
| 
 | ||||
| ```go | ||||
| //go:generate go run git.rootprojects.org/root/go-gitver/v2 --fail | ||||
| //go:generate go run git.rootprojects.org/root/go-gitver --fail | ||||
| 
 | ||||
| package main | ||||
| 
 | ||||
| @ -195,7 +195,7 @@ If you're using `go mod vendor` (which I highly recommend that you do), | ||||
| you'd modify the `go:generate` ever so slightly: | ||||
| 
 | ||||
| ```go | ||||
| //go:generate go run -mod=vendor git.rootprojects.org/root/go-gitver/v2 --fail | ||||
| //go:generate go run -mod=vendor git.rootprojects.org/root/go-gitver --fail | ||||
| ``` | ||||
| 
 | ||||
| The only reason I didn't do that in the example is that I'd be included | ||||
| @ -203,7 +203,7 @@ the repository in itself and that would be... weird. | ||||
| 
 | ||||
| # Why a tools package? | ||||
| 
 | ||||
| > import "git.rootprojects.org/root/go-gitver/v2" is a program, not an importable package | ||||
| > import "git.rootprojects.org/root/go-gitver" is a program, not an importable package | ||||
| 
 | ||||
| Having a tools package with a build tag that you don't use is a nice way to add exact | ||||
| versions of a command package used for tooling to your `go.mod` with `go mod tidy`, | ||||
| @ -243,8 +243,8 @@ git rev-parse HEAD | ||||
| ### cannot find package "." | ||||
| 
 | ||||
| ```txt | ||||
| package git.rootprojects.org/root/go-gitver/v2: cannot find package "." in: | ||||
| 	/Users/me/go-example/vendor/git.rootprojects.org/root/go-gitver/v2 | ||||
| package git.rootprojects.org/root/go-gitver: cannot find package "." in: | ||||
| 	/Users/me/go-example/vendor/git.rootprojects.org/root/go-gitver | ||||
| cmd/example/example.go:1: running "go": exit status 1 | ||||
| ``` | ||||
| 
 | ||||
|  | ||||
| @ -2,4 +2,4 @@ module example.com/hello | ||||
| 
 | ||||
| go 1.12 | ||||
| 
 | ||||
| require git.rootprojects.org/root/go-gitver/v2 v2.0.2 | ||||
| require git.rootprojects.org/root/go-gitver v1.1.0 | ||||
|  | ||||
| @ -1,4 +1,4 @@ | ||||
| //go:generate go run -mod=vendor git.rootprojects.org/root/go-gitver/v2 --fail | ||||
| //go:generate go run -mod=vendor git.rootprojects.org/root/go-gitver --fail | ||||
| 
 | ||||
| package main | ||||
| 
 | ||||
|  | ||||
| @ -4,5 +4,5 @@ | ||||
| package tools | ||||
| 
 | ||||
| import ( | ||||
| 	_ "git.rootprojects.org/root/go-gitver/v2" | ||||
| 	_ "git.rootprojects.org/root/go-gitver" | ||||
| ) | ||||
|  | ||||
| @ -2,4 +2,4 @@ module example.com/hello | ||||
| 
 | ||||
| go 1.12 | ||||
| 
 | ||||
| require git.rootprojects.org/root/go-gitver/v2 v2.0.2 | ||||
| require git.rootprojects.org/root/go-gitver v1.1.0 | ||||
|  | ||||
| @ -1,4 +1,4 @@ | ||||
| //go:generate go run -mod=vendor git.rootprojects.org/root/go-gitver/v2 --fail | ||||
| //go:generate go run -mod=vendor git.rootprojects.org/root/go-gitver --fail | ||||
| 
 | ||||
| package main | ||||
| 
 | ||||
|  | ||||
| @ -3,4 +3,4 @@ | ||||
| // This is a dummy file for build tooling | ||||
| package main | ||||
| 
 | ||||
| import _ "git.rootprojects.org/root/go-gitver/v2" | ||||
| import _ "git.rootprojects.org/root/go-gitver" | ||||
|  | ||||
| @ -2,4 +2,4 @@ module example.com/hello | ||||
| 
 | ||||
| go 1.12 | ||||
| 
 | ||||
| require git.rootprojects.org/root/go-gitver/v2 v2.0.2 | ||||
| require git.rootprojects.org/root/go-gitver v1.1.0 | ||||
|  | ||||
| @ -1,4 +1,4 @@ | ||||
| //go:generate go run -mod=vendor git.rootprojects.org/root/go-gitver/v2 --package version --outfile ./version/zversion.go | ||||
| //go:generate go run -mod=vendor git.rootprojects.org/root/go-gitver --package version --outfile ./version/zversion.go | ||||
| 
 | ||||
| package main | ||||
| 
 | ||||
| @ -14,9 +14,9 @@ func main() { | ||||
| 	flag.Parse() | ||||
| 
 | ||||
| 	if *showVersion { | ||||
| 		fmt.Println(version.Commit()) | ||||
| 		fmt.Println(version.Version()) | ||||
| 		fmt.Println(version.Date()) | ||||
| 		fmt.Println(version.commit) | ||||
| 		fmt.Println(version.version) | ||||
| 		fmt.Println(version.date) | ||||
| 		return | ||||
| 	} | ||||
| 
 | ||||
|  | ||||
| @ -4,5 +4,5 @@ | ||||
| package tools | ||||
| 
 | ||||
| import ( | ||||
| 	_ "git.rootprojects.org/root/go-gitver/v2" | ||||
| 	_ "git.rootprojects.org/root/go-gitver" | ||||
| ) | ||||
|  | ||||
| @ -5,18 +5,3 @@ var ( | ||||
| 	version = "0.0.0-pre0+0000000" | ||||
| 	date    = "0000-00-00T00:00:00+0000" | ||||
| ) | ||||
| 
 | ||||
| // Commit returns the git commit reference | ||||
| func Commit() string { | ||||
| 	return commit | ||||
| } | ||||
| 
 | ||||
| // Version returns the git version, without the leading 'v' | ||||
| func Version() string { | ||||
| 	return version | ||||
| } | ||||
| 
 | ||||
| // Date returns the ISO-formatted date string | ||||
| func Date() string { | ||||
| 	return date | ||||
| } | ||||
|  | ||||
| @ -2,4 +2,4 @@ module example.com/hello | ||||
| 
 | ||||
| go 1.12 | ||||
| 
 | ||||
| require git.rootprojects.org/root/go-gitver/v2 v2.0.2 | ||||
| require git.rootprojects.org/root/go-gitver v1.1.0 | ||||
|  | ||||
| @ -12,9 +12,9 @@ func main() { | ||||
| 	flag.Parse() | ||||
| 
 | ||||
| 	if *showVersion { | ||||
| 		fmt.Println(version.Commit()) | ||||
| 		fmt.Println(version.Version()) | ||||
| 		fmt.Println(version.Date()) | ||||
| 		fmt.Println(version.commit) | ||||
| 		fmt.Println(version.version) | ||||
| 		fmt.Println(version.date) | ||||
| 		return | ||||
| 	} | ||||
| 
 | ||||
|  | ||||
| @ -4,5 +4,5 @@ | ||||
| package tools | ||||
| 
 | ||||
| import ( | ||||
| 	_ "git.rootprojects.org/root/go-gitver/v2" | ||||
| 	_ "git.rootprojects.org/root/go-gitver" | ||||
| ) | ||||
|  | ||||
| @ -1,4 +1,4 @@ | ||||
| //go:generate go run -mod=vendor git.rootprojects.org/root/go-gitver/v2 --package version | ||||
| //go:generate go run -mod=vendor git.rootprojects.org/root/go-gitver --package version | ||||
| 
 | ||||
| package version | ||||
| 
 | ||||
| @ -7,18 +7,3 @@ var ( | ||||
| 	version = "0.0.0-pre0+0000000" | ||||
| 	date    = "0000-00-00T00:00:00+0000" | ||||
| ) | ||||
| 
 | ||||
| // Commit returns the git commit reference | ||||
| func Commit() string { | ||||
| 	return commit | ||||
| } | ||||
| 
 | ||||
| // Version returns the git version, without the leading 'v' | ||||
| func Version() string { | ||||
| 	return version | ||||
| } | ||||
| 
 | ||||
| // Date returns the ISO-formatted date string | ||||
| func Date() string { | ||||
| 	return date | ||||
| } | ||||
|  | ||||
| @ -1,4 +1,4 @@ | ||||
| //go:generate go run -mod=vendor git.rootprojects.org/root/go-gitver/v2 | ||||
| //go:generate go run -mod=vendor git.rootprojects.org/root/go-gitver | ||||
| 
 | ||||
| package main | ||||
| 
 | ||||
| @ -10,7 +10,7 @@ import ( | ||||
| 	"text/template" | ||||
| 	"time" | ||||
| 
 | ||||
| 	"git.rootprojects.org/root/go-gitver/v2/gitver" | ||||
| 	"git.rootprojects.org/root/go-gitver/gitver" | ||||
| ) | ||||
| 
 | ||||
| var commit, version, date string | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user