From ff8cf0cdf6939ed3e1a6b38834d15a8de9b327e2 Mon Sep 17 00:00:00 2001 From: rhysd Date: Sat, 10 Nov 2018 23:12:41 +0900 Subject: [PATCH] versioning go-get-release --- cmd/go-get-release/README.md | 11 +++++++---- cmd/go-get-release/main.go | 8 ++++++++ 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/cmd/go-get-release/README.md b/cmd/go-get-release/README.md index bb3265c..42b36e3 100644 --- a/cmd/go-get-release/README.md +++ b/cmd/go-get-release/README.md @@ -1,6 +1,7 @@ Like `go get`, but it downloads and installs the latest release binary from GitHub instead. -Please install using `go get`. +Please download a binary from [release page](https://github.com/rhysd/go-github-selfupdate/releases/tag/go-get-release) +and put it in `$PATH` or build from source with `go get`. ``` $ go get -u github.com/rhysd/go-github-selfupdate/cmd/go-get-release @@ -9,12 +10,14 @@ $ go get -u github.com/rhysd/go-github-selfupdate/cmd/go-get-release Usage is quite similar to `go get`. But `{package}` must be hosted on GitHub. So it needs to start with `github.com/`. ``` -$ detect-latest-release {package} +$ go-get-release {package} ``` -Please note that this command assumes that specified package is following Git tag naming rules and released binaries naming rules described in [README](../../README.md). +Please note that this command assumes that specified package is following Git tag naming rules and +released binaries naming rules described in [README](../../README.md). -For example, following command downloads and installs the released binary of [ghr](https://github.com/tcnksm/ghr) to `$GOPATH/bin`. +For example, following command downloads and installs the released binary of [ghr](https://github.com/tcnksm/ghr) +to `$GOPATH/bin`. ``` $ go-get-release github.com/tcnksm/ghr diff --git a/cmd/go-get-release/main.go b/cmd/go-get-release/main.go index 7c526b3..d4b9d5b 100644 --- a/cmd/go-get-release/main.go +++ b/cmd/go-get-release/main.go @@ -12,6 +12,8 @@ import ( "strings" ) +var version = "1.0.0" + func usage() { fmt.Fprintln(os.Stderr, `Usage: go-get-release [flags] {package} @@ -76,10 +78,16 @@ func installFrom(url, cmd, path string) error { func main() { help := flag.Bool("help", false, "Show help") + ver := flag.Bool("version", false, "Show version") flag.Usage = usage flag.Parse() + if *ver { + fmt.Println(version) + os.Exit(0) + } + if *help || flag.NArg() != 1 || !strings.HasPrefix(flag.Arg(0), "github.com/") { usage() os.Exit(1)