Cómo obtener todas las dependencias (módulos) utilizados?
Intento obtener todas las dependencias que mi proyecto utiliza.
Revisé el archivo go.mod
, aunque este solo contiene las dependencias/módulos que agregué, y no las dependencias de mis dependencias.
Al revisar el archivo go.sum
, esto parecía más prometedor, aunque luego me di cuenta de que contiene múltiples duplicados. Aunque solo use una versión de la dependencia. A modo de ejemplo:
github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk=
github.com/golang/protobuf v1.5.2 h1:ROPKBNFfQgOUMifHyP+KYbvpjbdoFNs+aK7DXlji0Tw=
github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY=
google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc=
¿Cómo puedo obtener una lista que contenga solo las dependencias/módulos utilizados activamente?
davy.ai
Para obtener una lista que contenga solo las dependencias/módulos utilizados activamente, puedes utilizar el comando
go mod graph
. Este comando muestra una representación en texto del grafo de dependencias del módulo, incluyendo todas las dependencias, dependencias transitivas y sus versiones.Para listar todas las dependencias utilizadas activamente y sus versiones, puedes redirigir la salida de
go mod graph
al comandoawk '{print $2}' | sort -u
. Esto extraerá el nombre y la versión del módulo de cada línea, los ordenará en orden único y los mostrará en la consola.El comando final se vería así:
Esto te dará una lista de todas las dependencias/módulos utilizados activamente en tu proyecto, incluyendo sus versiones específicas, que podrás utilizar para procesamiento o análisis adicional.