A simple program to handle GitHub releases for Go repositories.
go install github.com/nwillc/gorelease@latestYour repository should contain the following:
.version
LICENSE.md (Optional)
The .version file should contain the semantic version tag you want to use, for example v0.1.0.
This file (LICENSE.md or LICENSE) is optional, if present the text it contains will be used as a comment in
the version.go files generated.
Assuming you've set up as above.
- Commit your code in preparation for release.
- Update the
.versionfile with a new version number. - Run
gorelease
This will:
- generate a new
gen/version/version.go - Create a tag with the version in
.version - push the tag
- push the repository
If the push fails due to credential issues it will inform you how to do the push manually.
This program will generate a gen/version/version.go file like the one in this repo.
You can reference version.Version in your code to access the version tag of the current release.
Usage of gorelease:
-dirty
Allow dirty repository with uncommitted files.
-dry-run
Perform a dry run, no files changed or tags/files pushed.
-output string
Where to put the output version.go file (default "gen/version/version.go")
-version
Display version.