title: How to install golang tools globally and then use them in multiple projects in different GOPATH?
body: <p>Most of the golang tools like golint, gopkgs etc are installed like libraries with <code>go get</code> for instance, <code>go get -v github.com/golang/lint/golint</code> or <code>go get -v github.com/tpng/gopkgs</code>. I wonder why these are not just binaries that run through the source code, like <code>go fmt</code>, for example?</p>
  
  <p>Since I work on multiple Go projects at the same time, I prefer having different <code>GOPATH</code> for different projects and so I am having to install these tools into every single project so that I can lint or have auto completions.</p>
  
  <p>Am I doing something wrong or is there a way to install these tools globally and then just use them in multiple projects? How do people handling multiple projects manage this?</p>
  
  <p><strong>EDIT:</strong></p>
  
  <p>I am not asking about vendoring of libraries or about projects using different versions of Go at the same time. My question is about having to install tools like lint and gopkgs into every GOPATH, why they were designed to be treated like libraries instead of being provided as a global binary like <code>go fmt</code> which then could've been used in multiple projects, just like we use <code>go fmt</code></p>