Начиная с v1.11 Go добавлена поддержка модулей.Команды
go mod init <package name>
go build
будут генерировать файлы go.mod
и go.sum
, которые содержат все найденные версии для зависимостей пакета.
Если у модуля нет выпусков, используется последний коммит этого модуля.Если у модуля действительно есть выпуски, последний выбирается как зависимость.
Однако иногда мне может понадобиться функциональность, которой еще нет в опубликованном выпуске, но из коммита, сделанного после этого выпуска.Как мне установить go.mod
, чтобы он указывал не на выпуск модуля, а на конкретный коммит в репозитории модуля?
Похоже, я могу сделать это вручную в go.mod с
module /my/module
require (
...
github.com/someone/some_module v0.0.0-20181121201909-af044c0995fe
...
)
, где v0.0.0
не соответствует последнему опубликованному тегу выпуска, 20181121201909
будет меткой времени коммита, а af044c0995fe
будет хэшем коммита?Должна ли такая информация быть найдена и введена вручную, или есть лучший способ?