From 6f1996fdfe16ee1642cf6f4876ed3648e2f66969 Mon Sep 17 00:00:00 2001 From: Kevin Burke Date: Wed, 12 Jul 2017 21:43:35 -0600 Subject: [PATCH] cmd/go-contrib-init: better GOPATH checkout error message Modify the error message to provide more context if the user is in the wrong directory. (The default Terminal.app does not do a great job of showing what directory you are currently in). Change-Id: Iafcbbd2070ca968863120fb8c4bc15609475cda2 Reviewed-on: https://go-review.googlesource.com/48232 Reviewed-by: Brad Fitzpatrick --- cmd/go-contrib-init/contrib.go | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/cmd/go-contrib-init/contrib.go b/cmd/go-contrib-init/contrib.go index cb96453b..1cd47f84 100644 --- a/cmd/go-contrib-init/contrib.go +++ b/cmd/go-contrib-init/contrib.go @@ -147,16 +147,20 @@ func checkGoroot() { } func checkWorkingDir() { - if *repo == "go" { - if inGoPath() { - log.Fatal("You can't work on Go from within your GOPATH. Please checkout Go outside of your GOPATH") - } - return - } wd, err := os.Getwd() if err != nil { log.Fatal(err) } + if *repo == "go" { + if inGoPath(wd) { + log.Fatalf(`You can't work on Go from within your GOPATH. Please checkout Go outside of your GOPATH + +Current directory: %s +GOPATH: %s +`, wd, os.Getenv("GOPATH")) + } + return + } gopath := firstGoPath() if gopath == "" { @@ -197,12 +201,7 @@ func exists(path string) (bool, error) { return true, err } -func inGoPath() bool { - wd, err := os.Getwd() - if err != nil { - log.Fatal(err) - } - +func inGoPath(wd string) bool { if os.Getenv("GOPATH") == "" { return false }