Как работает go mod?

Junior
1.4k просмотров
AFK Offer AI

go mod — система управления зависимостями (с Go 1.11, по умолчанию с 1.16).

go mod init github.com/user/project  # создать go.mod
go mod tidy                           # добавить нужные, убрать лишние
go mod download                       # скачать зависимости
go mod vendor                         # скопировать в vendor/
go mod graph                          # граф зависимостей
go mod why github.com/pkg/errors      # почему нужна эта зависимость

go.mod — декларация модуля и зависимостей:

module github.com/user/project

go 1.22

require ( github.com/gin-gonic/gin v1.9.1 google.golang.org/grpc v1.60.0 )

go.sum — хеши зависимостей для верификации. Коммитится в репо.

go get github.com/pkg/errors@v0.9.1  # конкретная версия
go get github.com/pkg/errors@latest  # последняя
go get -u ./...                       # обновить все

Semver: v1.2.3. Мажорная версия >=2 меняет import path: github.com/user/project/v2.

Следующий вопрос

Типы данных в Go?