cmd/go/internal/modfetch/github: trim trailing '.git' suffix in repo name

Github repositories can be accessed and cloned using their 'normal'
URL (https://github.com/user/repo) and a '.git'-suffixed version of it
(https://github.com/user/repo.git). The Github API however doesn't
allow adding this suffix to repo API calls, making requests to such
'.git'-suffixed URLs fail.
This change cuts off trailing '.git' strings from repo names, adding
adding support for described URLs.

Change-Id: I661767a1bf6c813932282b96a5f9fa059b7e5507
GitHub-Last-Rev: d3ada90fa67c4fcce8837685753d4e992bb855f0
GitHub-Pull-Request: golang/vgo#2
Reviewed-on: https://go-review.googlesource.com/102621
Reviewed-by: Russ Cox <rsc@golang.org>
diff --git a/vendor/cmd/go/internal/modfetch/repo.go b/vendor/cmd/go/internal/modfetch/repo.go
index 0908dcf..8e4a3bb 100644
--- a/vendor/cmd/go/internal/modfetch/repo.go
+++ b/vendor/cmd/go/internal/modfetch/repo.go
@@ -115,6 +115,9 @@
 func lookupCodeHost(path string, customDomain bool) (codehost.Repo, error) {
 	switch {
 	case strings.HasPrefix(path, "github.com/"):
+		// Special case GitHub paths ending in ".git" for backwards compatibility
+		// with go get.
+		path = strings.TrimSuffix(path, ".git")
 		return github.Lookup(path)
 	case strings.HasPrefix(path, "bitbucket.org/"):
 		// Special case Bitbucket paths ending in ".git" for backwards compatibility