Diskzyv0.1
Borrar con cuidado

¿Qué es ~/go/pkg/mod en Mac y es seguro borrarla?

Respuesta corta

Puedes borrar la caché de módulos de Go, y Go vuelve a descargar los módulos la próxima vez que compilas. Usa go clean -modcache para hacerlo, porque los archivos son de solo lectura y el Finder o rm darán errores.

Dónde está

~/go/pkg/mod

Qué es

Cuando un proyecto de Go necesita una dependencia, el comando go descarga esa versión del módulo en la caché de módulos, que por omisión es ~/go/pkg/mod. Todos los proyectos de tu Mac comparten esta única caché.

Crece porque cada versión de cada módulo se guarda por separado y nada elimina las antiguas. Unos pocos árboles de dependencias grandes pueden sumar mucho en poco tiempo.

Go marca a propósito los archivos en caché como de solo lectura, para que las compilaciones no puedan modificarlos por accidente. Por eso borrar la carpeta a mano produce errores de permisos.

Cuánto llega a ocupar

Normalmente unos pocos GB con un desarrollo habitual en Go.

Cómo vaciarla a mano

  1. Abre Terminal.
  2. Ejecuta el comando de abajo. Borra toda la caché de descarga de módulos, incluido el código fuente descomprimido de cada versión de dependencia.
  3. Si definiste GOMODCACHE o GOPATH con otra ubicación, el comando vacía igualmente la carpeta correcta. Puedes comprobar la ubicación con go env GOMODCACHE.
En Terminal
go clean -modcache

Qué pasa después

El siguiente go build o go test de cada proyecto descarga de nuevo sus dependencias, así que es más lento y necesita conexión de red. Tu propio código y los binarios de Go instalados no se eliminan.

Cómo la trata Diskzy

Diskzy muestra la caché de módulos de Go en la pestaña Clean up (Limpieza), pero la deja sin marcar, porque tu siguiente compilación tendría que descargarlo todo de nuevo.

Guías relacionadas

Descubre adónde se fue el espacio de tu Mac

Diskzy hace un mapa de tu disco, explica los Datos del sistema y limpia lo que es seguro. Gratis durante 72 horas, después $9 una sola vez para 2 Mac.

Prueba Diskzy gratis
Leer en:EnglishEspañolDeutschPortuguêsFrançaisTürkçe日本語