From: Burcu Dogan Date: Mon, 19 Oct 2015 22:27:19 +0000 (-0700) Subject: cmd/go: don't override GIT_TERMINAL_PROMPT X-Git-Tag: go1.6beta1~794 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=4dc49d23a7b70038890df6c3862f33822da29b48;p=gostls13.git cmd/go: don't override GIT_TERMINAL_PROMPT This CL keeps disallowing `go get` from falling to the prompt unless user has set GIT_TERMINAL_PROMPT env variable. If GIT_TERMINAL_PROMPT is set, go-get will not override its value and will prompt for username/password in the case of GIT_TERMINAL_PROMPT=1. Fixes #12706. Change-Id: Ibd6b1100af6b04fb8114279cdcf608943e7765be Reviewed-on: https://go-review.googlesource.com/16091 Reviewed-by: Andrew Gerrand --- diff --git a/src/cmd/go/get.go b/src/cmd/go/get.go index 283de18eba..aac21a0f22 100644 --- a/src/cmd/go/get.go +++ b/src/cmd/go/get.go @@ -84,8 +84,12 @@ func runGet(cmd *Command, args []string) { // Disable any prompting for passwords by Git. // Only has an effect for 2.3.0 or later, but avoiding // the prompt in earlier versions is just too hard. - // See golang.org/issue/9341. - os.Setenv("GIT_TERMINAL_PROMPT", "0") + // If user has explicitly set GIT_TERMINAL_PROMPT=1, keep + // prompting. + // See golang.org/issue/9341 and golang.org/issue/12706. + if v := os.Getenv("GIT_TERMINAL_PROMPT"); v == "" { + os.Setenv("GIT_TERMINAL_PROMPT", "0") + } // Phase 1. Download/update. var stk importStack