go getinstalará el paquete en el primer directorio listado en GOPATH(una variable de entorno que puede contener una lista de directorios separados por dos puntos). Puede usar go get -upara actualizar paquetes existentes.
También puede usar go get -u allpara actualizar todos los paquetes en suGOPATH
Para proyectos más grandes, puede ser razonable crear diferentes GOPATH para cada proyecto, de modo que actualizar una biblioteca en el proyecto A no cause problemas en el proyecto B.
Escriba go help gopathpara obtener más información sobre la GOPATHvariable de entorno.
¿Es posible actualizar todos los paquetes a la última versión, como una actualización de paquete?
chourobin
73
debería go get -u all arrepentirme de resucitar, pero en caso de que alguien más estuviera mirando.
Dan Anderson
go get -u allya no funciona! Ejecutar este comando en GOPATH, al menos para Go 1.13, devolverá una advertencia: `advertencia" todos "no coincidieron con ningún paquete"
Contrapak
Funciona con Go 1.12.9
fviktor
61
La respuesta de @tux es excelente, solo quería agregar que puede usar ir a actualizar un paquete específico:
Como la pregunta menciona bibliotecas de terceros y no todas paquetes, entonces probablemente desee recurrir al uso de comodines.
Un caso de uso es: solo quiero actualizar todos mis paquetes que se obtienen del Github VCS, entonces simplemente diría:
go get-u github.com/...// ('...' being the wildcard).
Esto continuaría y solo actualizaría sus paquetes de github en el actual $GOPATH
Lo mismo se aplica también dentro de un VCS, digamos que solo desea actualizar todos los paquetes de los repositorios de ogranizaiton A ya que han lanzado una revisión de la que depende:
go get -u all
arrepentirme de resucitar, pero en caso de que alguien más estuviera mirando.go get -u all
ya no funciona! Ejecutar este comando en GOPATH, al menos para Go 1.13, devolverá una advertencia: `advertencia" todos "no coincidieron con ningún paquete"La respuesta de @tux es excelente, solo quería agregar que puede usar ir a actualizar un paquete específico:
fuente
Como la pregunta menciona bibliotecas de terceros y no todas paquetes, entonces probablemente desee recurrir al uso de comodines.
Un caso de uso es: solo quiero actualizar todos mis paquetes que se obtienen del Github VCS, entonces simplemente diría:
Esto continuaría y solo actualizaría sus paquetes de github en el actual
$GOPATH
Lo mismo se aplica también dentro de un VCS, digamos que solo desea actualizar todos los paquetes de los repositorios de ogranizaiton A ya que han lanzado una revisión de la que depende:
fuente
Las respuestas anteriores tienen los siguientes problemas:
Para evitarlos, haga lo siguiente:
go get -d
fuente
ir 1.13
(exec del directorio raíz del módulo)
Actualizar dependencias especificadas:
Actualice todas las dependencias directas e indirectas a las últimas actualizaciones menores o parches (se ignoran las versiones preliminares):
Referencia:
https://github.com/golang/go/wiki/Modules#daily-workflow
go help get
fuente
Para especificar versiones o confirmaciones:
Ver https://github.com/golang/go/wiki/Modules#daily-workflow
fuente
Ir al camino y escribir
Actualizará todos los paquetes requeridos.
fuente
go get -u ./...
(3 puntos)