Skip to content

Latest commit

 

History

History
246 lines (171 loc) · 7.77 KB

README_RU.md

File metadata and controls

246 lines (171 loc) · 7.77 KB

Bumpster

    _____                                 __
   / _  / __  __ ____ ___   ____   _____ / /_ ___   _____
  / __  |/ / / // __ `__ \ / __ \ / ___// __// _ \ / ___/
 / /_/ // /_/ // / / / / // /_/ /(__  )/ /_ / ___// /
/_____/ \__,_//_/ /_/ /_// .___//____/ \__/ \___//_/
                        /_/

ENGLISH VERSION

Bumpster — это мощная утилита для автоматизации управления семантическими версиями. Название объединяет слова "bump" и "buster", подчеркивая способность утилиты быстро и эффективно обновлять версии ваших проектов.

Основные возможности

  • Поддержка автоматического обновления версий для major, minor и patch изменений.
  • Бесшовная работа с Git для управления релизами без необходимости использовать git-flow.
  • Настраиваемые имена веток для master и develop.
  • Создание и закрытие feature-веток с настраиваемым поведением.
  • Локальные и глобальные конфигурационные файлы для гибкости.
  • Опциональное логирование всех операций.
  • Минимальный след: устанавливается в ~/.bumpster.
  • Легкое удаление: достаточно удалить директорию .bumpster.
  • Кроссплатформенная совместимость (Linux, macOS и Git Bash на Windows).
  • Поддержка опциональной синхронизации файла VERSION с package.json.

Установка

Установить Bumpster можно одной командой:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/phoenixweiss/Bumpster/main/install.sh)"

Утилита будет установлена в домашней директории под ~/.bumpster.

После установки добавьте Bumpster в PATH:

echo 'export PATH="$HOME/.bumpster/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

Для Git Bash на Windows:

echo 'export PATH="$HOME/.bumpster/bin:$PATH"' >> ~/.bash_profile
source ~/.bash_profile

Использование

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

Обновление major-версии:

bumpster --major
# или
bump -M

Обновление minor-версии:

bumpster --minor
# или
bump -m

Обновление patch-версии:

bumpster --patch
# или
bump -p

Синхронизация с package.json

Bumpster поддерживает опциональную синхронизацию между файлом VERSION и package.json. При включённой опции обновление версии через bump автоматически синхронизирует версию в package.json. Если package.json не найден, операция пропускается с записью в лог.

Пример настройки:

SYNC_WITH_PACKAGE_JSON="true"

Пример использования:

  • VERSION обновлён до 1.0.0

  • package.json обновлён с той же версией:

    {
      "version": "1.0.0"
    }

Отображение версии

Чтобы отобразить текущую версию Bumpster:

bumpster --version
# или
bump -v

Отображение справки

Для справки и просмотра доступных опций:

bumpster --help
# или
bump -h

Обновление Bumpster

Обновить Bumpster до последней версии:

bumpster --update
# или
bump -u

Настройка имен веток

Вы можете задать свои имена веток через конфигурационный файл или переменные окружения. Имена веток по умолчанию: main и dev.

Пример конфигурации в .bumpsterrc:

# ~/.bumpsterrc или ./project/.bumpsterrc
GIT_MASTER_BRANCH="main"
GIT_DEVELOP_BRANCH="dev"
...

Опция AFTER_BUMP_BRANCH

Эта опция позволяет указать ветку, на которую следует переключиться после повышения версии. По умолчанию переключается на основную ветку. Если указанная ветка не существует, возвращается к ветке по умолчанию.

Пример:

AFTER_BUMP_BRANCH="dev"

Проверка состояния репозитория

Чтобы проверить текущее состояние репозитория:

bumpster --status
# или
bump -s

Вывод включает:

  • Текущую ветку.
  • Количество незакоммиченных изменений.
  • Количество непушенных коммитов.

Создание локального конфигурационного файла

Сгенерировать локальный конфигурационный файл .bumpsterrc для проекта:

bumpster --create-local-config
# или
bump -l

Утилита проведет вас через интерактивный процесс настройки.

Создание и закрытие feature-веток

Создать feature-ветку:

bumpster --create-feature
# или
bump -f

Закрыть текущую feature-ветку:

bumpster --close-feature
# или
bump -c

При закрытии feature-ветки изменения сливаются в ветку разработки, а feature-ветка может быть удалена в зависимости от настроек.

Конфигурация

Bumpster использует конфигурационные файлы (.bumpsterrc) для настройки своего поведения. Поддерживаются два типа конфигурационных файлов:

  • Глобальная конфигурация: находится в ~/.bumpsterrc.
  • Локальная конфигурация: находится в директории проекта (./.bumpsterrc). Локальные настройки имеют приоритет над глобальными.

Пример конфигурации

# ~/.bumpsterrc или ./project/.bumpsterrc
GIT_MASTER_BRANCH="main"
GIT_DEVELOP_BRANCH="dev"
ENABLE_LOGGING="true"
LOG_FILE="bumpster.log"
DELETE_FEATURE_BRANCH_AFTER_MERGE="false"
ASK_BEFORE_DELETING_FEATURE_BRANCH="true"
SYNC_WITH_PACKAGE_JSON="true"
AFTER_BUMP_BRANCH="dev"

Требования

Перед использованием Bumpster убедитесь, что репозиторий Git инициализирован.

Удаление Bumpster

Для полного удаления Bumpster удалите директорию ~/.bumpster:

rm -rf ~/.bumpster

Автор

Создатель и поддерживающий разработчик: PAVEL TKACHEV (phoenixweiss).

Лицензия

Bumpster является программным обеспечением с открытым исходным кодом и распространяется по лицензии MIT.