mirror of
https://github.com/golang/go
synced 2024-09-19 16:01:33 +00:00
cmd/go: allow omitted user name in git ssh repo syntax
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>
This commit is contained in:
parent
f9137c5373
commit
3e9f063670
|
@ -147,7 +147,7 @@ var vcsGit = &vcsCmd{
|
|||
|
||||
// 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"
|
||||
|
@ -171,10 +171,12 @@ func gitRemoteRepo(vcsGit *vcsCmd, rootDir string) (remoteRepo string, err error
|
|||
// "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 {
|
||||
|
|
Loading…
Reference in a new issue