cmd/go: skip vgo.Init for the version subcommand

Fixes golang/go#25903.

Change-Id: Ib3bcb90147cf5b452f41850aba733144e22c06f3
Reviewed-on: https://go-review.googlesource.com/119275
Reviewed-by: Russ Cox <rsc@golang.org>
diff --git a/vendor/cmd/go/main.go b/vendor/cmd/go/main.go
index 7327ef1..1190808 100644
--- a/vendor/cmd/go/main.go
+++ b/vendor/cmd/go/main.go
@@ -128,6 +128,9 @@
 	case "mod":
 		// Skip vgo.Init (which may insist on go.mod existing)
 		// so that go mod -init has a chance to write the file.
+	case "version":
+		// Skip vgo.Init so that users can report bugs against
+		// go mod -init.
 	case "vendor":
 		fmt.Fprintf(os.Stderr, "go vendor is now go mod -vendor\n")
 		os.Exit(2)
diff --git a/vendor/cmd/go/vgo_test.go b/vendor/cmd/go/vgo_test.go
index a2f61dd..983ff2e 100644
--- a/vendor/cmd/go/vgo_test.go
+++ b/vendor/cmd/go/vgo_test.go
@@ -624,3 +624,12 @@
 	tg.run("-vgo", "mod", "-vendor")
 	tg.grepStderr("vgo: no dependencies to vendor", "print vendor info")
 }
+
+func TestVersionWithoutModule(t *testing.T) {
+	tg := testgo(t)
+	defer tg.cleanup()
+	tg.makeTempdir()
+
+	tg.cd(tg.path("."))
+	tg.run("-vgo", "version")
+}