Principal Engineering

Pressing buttons in the right order.

Jetbrains Space + go get

Posted at — Oct 4, 2023

Дано:

Ограничения:

В первую очередь настроим git. Добавьте в ~/.gitconfig следующую директиву:

[url "[email protected]/<org-name>"]
    insteadOf = https://<org-name>.jetbrains.space/

Здесь <org-name> — фрагмент доменного имени, принадлежащего вашей организации.

Создайте или используйте существующий проект для размещения репозиториев с библиотеками. В примерах я буду полагать, что он называется lib, вы можете дать ему имя на ваш выбор.

В проекте lib создайте репозиторий вашей библиотеки. Инициализируйте Go-модуль следующим образом:

go mod init <org-name>.jetbrains.space/lib/<lib-name>

Вместо <lib-name> подставьте название библиотеки/репозитория. В сам репозиторий положите код своей библиотеки и передайте его на сервер.

Для добавления вашей новой внутренней библиотеки в проект выполните следующие команды:

export GONOSUMDB=<org-name>.jetbrains.space
go get <org-name>.jetbrains.space/lib/<lib-name>

При таком раскладе Go не пойдет проверять по GOSUMDB вашу библиотеку и она подтянется как зависимость.

Что делать с переменной GONOSUMDB, решите самостоятельно:

comments powered by Disqus