No test because the code has no test.
Fixes #12313.
Change-Id: I2cfd0a0422c0cd76f0371c2d3bbbdf5bb3b3f1eb
Reviewed-on: https://go-review.googlesource.com/17951
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
// scpSyntaxRe matches the SCP-like addresses used by Git to access
// repositories by SSH.
-var scpSyntaxRe = regexp.MustCompile(`^([a-zA-Z0-9_]+)@([a-zA-Z0-9._-]+):(.*)$`)
+var scpSyntaxRe = regexp.MustCompile(`^(?:([a-zA-Z0-9_]+)@)?([a-zA-Z0-9._-]+):(.*)$`)
func gitRemoteRepo(vcsGit *vcsCmd, rootDir string) (remoteRepo string, err error) {
cmd := "config remote.origin.url"
// "ssh://git@github.com/user/repo".
repoURL = &url.URL{
Scheme: "ssh",
- User: url.User(m[1]),
Host: m[2],
RawPath: m[3],
}
+ if m[1] != "" {
+ repoURL.User = url.User(m[1])
+ }
} else {
repoURL, err = url.Parse(out)
if err != nil {