From: Gustavo Franco Date: Tue, 29 Jan 2013 16:20:43 +0000 (-0800) Subject: cmd/go: add helpful error message when vcs is not found. X-Git-Tag: go1.1rc2~1262 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=56517aed959d2f73e7d76e80c79c5cbc87e4bd54;p=gostls13.git cmd/go: add helpful error message when vcs is not found. Fixes #4652. R=bradfitz, minux.ma, rsc CC=golang-dev https://golang.org/cl/7094049 --- diff --git a/src/cmd/go/vcs.go b/src/cmd/go/vcs.go index 437e6400bb..8042935b9d 100644 --- a/src/cmd/go/vcs.go +++ b/src/cmd/go/vcs.go @@ -180,6 +180,14 @@ func (v *vcsCmd) run1(dir string, cmdline string, keyval []string, verbose bool) args[i] = expand(m, arg) } + _, err := exec.LookPath(v.cmd) + if err != nil { + fmt.Fprintf(os.Stderr, + "go: missing %s command. See http://golang.org/s/gogetcmd\n", + v.name) + return nil, err + } + cmd := exec.Command(v.cmd, args...) cmd.Dir = dir if buildX { @@ -189,7 +197,7 @@ func (v *vcsCmd) run1(dir string, cmdline string, keyval []string, verbose bool) var buf bytes.Buffer cmd.Stdout = &buf cmd.Stderr = &buf - err := cmd.Run() + err = cmd.Run() out := buf.Bytes() if err != nil { if verbose || buildV {