go get hace dos cosas principales en este orden:
La -dbandera ( go get -d) indica go getque se detenga después de descargar los paquetes; es decir, instruye a go getno hacergo install
la diferencia:
go get // verificar si los paquetes necesitan ser descargados, descargarlos si es necesario y luego compilarlos
go install // omita la parte con la descarga de paquetes, solo compile (esto arrojará un error si falta algún paquete)
sobre GOPATHla variable de entorno
Las GOPATHherramientas de Go utilizan la variable de entorno. Se debe establecer con el fin de ser capaz de get, buildyinstall paquetes, y especifica la ubicación de su espacio de trabajo. Es probable que sea la única variable de entorno que necesitará establecer al desarrollar código Go.
De nuevo, el GOPATH no debe apuntar a la instalación de Go, sino a su espacio de trabajo.
Por ejemplo, en Windows, si decide que su espacio de trabajo está en c:\gowork\, deberá establecer el GOPATHvalor comoc:\gowork

Su código fuente debe estar en c:\gowork\src\<some project folder>\y después de ejecutarlo go geten el símbolo del sistema desde dentro c:\gowork\src\<some project folder>\, verá c:\gowork\bin\y se c:\gowork\pkg\está creando.
go get ./path/to/local_package, y se comportaría igual que si lo usarago install ./path/to/local_package, ¿verdad? Dado que no hay proceso de descarga en este caso.