Closed
Description
Setting up a workspace/GOPATH is one of the big hurdles for new Go users. And maintaining (switching between) several workspaces is a common work flow for some Go developers.
This proposal is to make the GOPATH environment variable optional, and to have the go tool detect the GOPATH root on invocation. It would to this by walking up the tree from the cwd to find a directory named src
, and setting GOPATH
to the parent of that directory.
For new users, the getting started experience is something like:
mkdir -p src/github.com/user/hello
cd src/github.com/user/hello
vim hello.go
go install
hello
or to install something else:
mkdir src
cd src
go get github.com/docker/docker
Thoughts?