Go

Реестр пакетов Go на GitVerse предназначен для хранения, управления и распространения Go-пакетов.

Требования к zip-архиву

В составе архива должен быть каталог с именем в формате модуль@версия или модуль@версия-timestamp-commit hash, например pkg-example1@v1.0.0 или pkg-example1@v2.1.0-20230520120000-8a3d2e1f7b11.

Info

C требованиями к zip-архиву пакета go можно ознакомиться на странице https://go.dev/ref/mod#zip-files.

Пояснения:

  1. модуль должен быть именем модуля Go, который обычно соответствует имени репозитория или основной директории модуля.
  2. версия должна быть согласована с семантическим версионированием.
  3. timestamp должен содержать информацию о времени сборки архива.
  4. commit hash представляет собой хэш коммита из репозитория.

Рекомендации:

  1. Оптимизация: для уменьшения размера архива рекомендуется удалять все ненужные файлы, такие как файлы тестов, временные файлы и файлы конфигурации.
  2. Ясность: используйте понятные и описательные имена каталогов и файлов, чтобы облегчить понимание структуры пакета.
  3. Согласованность: придерживайтесь единого стиля именования для всех каталогов и файлов в пакете.

Пример правильной структуры:

go-package/
├── main.go
├── internal/
│   ├── utils.go
│   └── server.go
└── cmd/
    └── app/
        └── main.go

Публикация пакета

  1. Создайте токен.

  2. Для публикации выполните команду, заменив в ней соответствующие поля на ваши:

curl --user ваш_username:ваш_токен \
     --upload-file путь/к/файлу.zip \
     https://gitverse.ru/api/packages/ваш_username/go/upload

Пример:

curl --user author2:personal_access_token_example --upload-file calculator-v1.0.0.zip https://gitverse.ru/api/packages/author2/go/upload
  1. В профиле пользователя на вкладке Пакеты добавится новый пакет:

    .

Установка пакета

Порядок установки описан на странице пакета: