]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/go: "go get" don't ignore git default branch
authorJens Frederich <jfrederich@gmail.com>
Thu, 19 Feb 2015 20:37:38 +0000 (21:37 +0100)
committerRuss Cox <rsc@golang.org>
Tue, 12 May 2015 16:12:46 +0000 (16:12 +0000)
Any Git branch can be the default branch not only master. Removing
hardwired 'checkout master', and using 'checkout {tag}' is the best
choice. It works with and without a master branch. Furthermore it
resolves the Github default branch issue. Changing Github default
branch is effectively changing HEAD.

Fixes #9032

Change-Id: I19a1221bcefe0806e7556c124c6da7ac0c2160b5
Reviewed-on: https://go-review.googlesource.com/5312
Reviewed-by: Russ Cox <rsc@golang.org>
src/cmd/go/vcs.go

index 408104d776aba21997a62357a65534f932ceb5c7..2179000afde4ec4c93b8f280ce09b4927e417b9c 100644 (file)
@@ -115,8 +115,12 @@ var vcsGit = &vcsCmd{
        tagLookupCmd: []tagCmd{
                {"show-ref tags/{tag} origin/{tag}", `((?:tags|origin)/\S+)$`},
        },
-       tagSyncCmd:     "checkout {tag}",
-       tagSyncDefault: "checkout master",
+       tagSyncCmd: "checkout {tag}",
+       // both createCmd and downloadCmd update the working dir.
+       // No need to do more here. We used to 'checkout master'
+       // but that doesn't work if the default branch is not named master.
+       // See golang.org/issue/9032.
+       tagSyncDefault: "",
 
        scheme:     []string{"git", "https", "http", "git+ssh"},
        pingCmd:    "ls-remote {scheme}://{repo}",