From 04b08da9af0c450d645ab7389d1467308cfc2db8 Mon Sep 17 00:00:00 2001 From: Michael Stapelberg Date: Mon, 4 Mar 2013 21:27:36 +0100 Subject: Imported Upstream version 1.1~hg20130304 --- src/cmd/go/vcs.go | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'src/cmd/go/vcs.go') diff --git a/src/cmd/go/vcs.go b/src/cmd/go/vcs.go index 1c121672f..b99579441 100644 --- a/src/cmd/go/vcs.go +++ b/src/cmd/go/vcs.go @@ -81,7 +81,7 @@ var vcsHg = &vcsCmd{ tagSyncCmd: "update -r {tag}", tagSyncDefault: "update default", - scheme: []string{"https", "http"}, + scheme: []string{"https", "http", "ssh"}, pingCmd: "identify {scheme}://{repo}", } @@ -180,8 +180,17 @@ 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 + cmd.Env = envForDir(cmd.Dir) if buildX { fmt.Printf("cd %s\n", dir) fmt.Printf("%s %s\n", v.cmd, strings.Join(args, " ")) @@ -189,7 +198,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 { -- cgit v1.2.3