go - por - para que sirve apt get install
¿Cómo funciona Go para actualizar paquetes de terceros? (5)
Viendo cómo los paquetes de golang crecen y mejoran, me pregunto cómo se resuelve el problema con las versiones del paquete.
Veo que una forma es almacenar paquetes de terceros en una carpeta de proyectos.
Pero, ¿y si lo instalo con go get
?
@tux answer es genial, solo quería agregar que puede usar go get para actualizar un paquete específico:
go get -u full_package_name
Dado que la pregunta menciona bibliotecas de terceros y no todos los paquetes, entonces es probable que desee recurrir al uso de comodines.
Un caso de uso es: solo quiero actualizar todos mis paquetes que se obtienen de Github VCS, entonces solo diría:
go get -u github.com/... // (''...'' being the wildcard).
Esto continuaría y solo actualizará sus paquetes github en el $GOPATH
actual
Lo mismo se aplica para un VCS también, digamos que desea actualizar solo todos los paquetes de los repositorios de O de Agranizaiton, ya que han lanzado un hotfix del que depende:
go get -u github.com/orgA/...
Ir a la ruta y escribir
go get -u ./..
Actualizará todos los paquetes requeridos.
Las respuestas anteriores tienen los siguientes problemas:
- Actualizan todo, incluida su aplicación (en caso de que no haya realizado cambios).
- Actualizan los paquetes que es posible que ya hayas eliminado de tu proyecto, pero ya están en tu disco.
Para evitar esto, haga lo siguiente:
- Elimina las carpetas de terceros que quieras actualizar.
- ve a la carpeta de tu aplicación y ejecuta
go get -d
go get
instalará el paquete en el primer directorio listado en GOPATH
(una variable de entorno que podría contener una lista de directorios separados por dos puntos). Puede usar go get -u
para actualizar paquetes existentes.
También puede usar go get -u all
para actualizar todos los paquetes en su GOPATH
Para proyectos más grandes, podría ser razonable crear diferentes GOPATH para cada proyecto, por lo que actualizar una biblioteca en el proyecto A no causará problemas en el proyecto B.
Escriba go help gopath
para obtener más información sobre la variable de entorno GOPATH
.