Заставьте `go get` и` go install` использовать кеш, даже если он древний - PullRequest
0 голосов
/ 21 января 2020

Есть ли флаг для go get или go install, чтобы заставить их использовать кеш, даже если кеш очень старый / древний? Мы используем docker images / многоступенчатую сборку для кэширования deps, и этим исходным файлам могут быть недели или месяцы.

1 Ответ

1 голос
/ 21 января 2020

go.mod может записывать конкретные версии или коммиты, от которых вы зависите. Если вам нужны старые версии ваших deps, укажите их явно в вашем go.mod, и вы получите воспроизводимые сборки, даже если ваши зависимости эволюционируют.

Используйте go get foo@123456, если вам нужен коммит 123456 вашего foo зависимость.

Используйте go get foo@v0.1.2, если вам нужна v0.1.2 версия вашей зависимости. Они будут записаны в go.mod, и независимо от того, где / когда вы собираете свой модуль, он всегда будет использовать эти версии.

Подробнее см. Go Wiki: Модули: Как обновить и зависимостей понижения .

...