Files
dvc-cli/docs/PUBLISHING.md
2025-11-09 01:28:42 +03:00

4.0 KiB
Raw Permalink Blame History

📦 Инструкция по публикации в NPM

Подготовка к публикации

Шаг 1: Авторизация в NPM

npm login

Введите credentials для аккаунта с доступом к организации @grom13.

Шаг 2: Сборка проекта

cd /home/gromov/projects/my/dvc-cli
npm run build

Эта команда выполнит:

  • Сборку библиотеки в dist/
  • Генерацию TypeScript деклараций (.d.ts)
  • Сборку CLI бинарника в bin/cli.js

Шаг 3: Проверка перед публикацией (опционально)

# Посмотреть какие файлы будут опубликованы
npm pack --dry-run

# Или создать тестовый архив для проверки
npm pack
# Это создаст файл grom13-dvc-cli-0.1.0.tgz

Публикация

Шаг 4: Публикация в NPM

npm publish --access public

⚠️ Важно: Флаг --access public обязателен для scoped пакетов (@grom13/...), иначе NPM попытается опубликовать как приватный пакет (требует платную подписку).

Шаг 5: Проверка публикации

# Проверить что пакет доступен
npm view @grom13/dvc-cli

# Протестировать установку через npx
npx @grom13/dvc-cli --help

# Или установить глобально и протестировать
npm install -g @grom13/dvc-cli
dvc --help

Обновление версии

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

# Patch версия (0.1.0 → 0.1.1) - исправления багов
npm version patch

# Minor версия (0.1.0 → 0.2.0) - новые функции
npm version minor

# Major версия (0.1.0 → 1.0.0) - breaking changes
npm version major

После обновления версии:

npm publish --access public

Откат публикации (если нужно)

# Удалить конкретную версию (в течение 72 часов)
npm unpublish @grom13/dvc-cli@0.1.0

# Удалить весь пакет (использовать осторожно!)
npm unpublish @grom13/dvc-cli --force

⚠️ Внимание: После unpublish нельзя повторно опубликовать ту же версию. Нужно увеличить версию.

Использование после публикации

Пакет будет доступен для использования:

# Через npx (без установки)
npx @grom13/dvc-cli video.mp4 ./output

# Глобальная установка
npm install -g @grom13/dvc-cli
dvc video.mp4 ./output

# Локальная установка в проект
npm install @grom13/dvc-cli

Troubleshooting

Ошибка: "You must sign up for private packages"

Решение: Добавьте флаг --access public при публикации.

Ошибка: "You do not have permission to publish"

Решение: Убедитесь что вы авторизованы (npm whoami) и имеете доступ к организации @grom13.

Ошибка при сборке

Решение: Убедитесь что установлены все зависимости:

npm install
# или
bun install

Checklist перед публикацией

  • Обновлена версия в package.json
  • Обновлен README.md с актуальной информацией
  • Проект успешно собирается (npm run build)
  • Протестирован CLI локально
  • Авторизованы в NPM (npm whoami)
  • Проверены файлы для публикации (npm pack --dry-run)