feat: Add review events persistence, version display, and auto-versioning system

This commit is contained in:
Primakov Alexandr Alexandrovich
2025-10-13 14:18:37 +03:00
parent cfba28f913
commit 2db1225618
56 changed files with 750 additions and 436 deletions

66
.git-hooks/README.md Normal file
View File

@@ -0,0 +1,66 @@
# Git Hooks
Эта папка содержит пользовательские git hooks для автоматизации задач.
## Установка
Чтобы использовать эти hooks, выполните:
```bash
# Из корня проекта
git config core.hooksPath .git-hooks
# Сделать hooks исполняемыми
chmod +x .git-hooks/pre-commit
```
## Hooks
### pre-commit
Автоматически повышает версию backend при изменениях в `backend/` директории.
**Правила повышения версии:**
- `feat:` или `feature:` - повышает MINOR версию (0.1.0 → 0.2.0)
- `fix:` или `bugfix:` - повышает PATCH версию (0.1.0 → 0.1.1)
- `BREAKING:` или `major:` - повышает MAJOR версию (0.1.0 → 1.0.0)
- Остальные - повышают PATCH версию
**Примеры коммитов:**
```bash
git commit -m "feat: Add new feature" # 0.1.0 → 0.2.0
git commit -m "fix: Fix bug" # 0.1.0 → 0.1.1
git commit -m "BREAKING: Major changes" # 0.1.0 → 1.0.0
```
## Ручное повышение версии
Вы можете вручную повысить версию:
```bash
# Patch version (0.1.0 → 0.1.1)
bash bump_version.sh patch
# Minor version (0.1.0 → 0.2.0)
bash bump_version.sh minor
# Major version (0.1.0 → 1.0.0)
bash bump_version.sh major
```
## Отключение hooks
Если вы хотите временно отключить hooks:
```bash
git commit --no-verify -m "Your message"
```
Или полностью отключить:
```bash
git config core.hooksPath .git/hooks
```

24
.git-hooks/pre-commit Normal file
View File

@@ -0,0 +1,24 @@
#!/bin/bash
# Pre-commit hook для автоповышения версии
echo "🔄 Проверка версии backend..."
# Проверка, есть ли изменения в backend
if git diff --cached --name-only | grep -q '^backend/'; then
echo "📝 Обнаружены изменения в backend, обновление версии..."
# Запуск скрипта повышения версии
bash bump_version.sh
# Проверка, был ли изменен файл версии
if git diff --name-only | grep -q '^backend/VERSION'; then
echo "✅ Версия обновлена, добавляем в коммит"
git add backend/VERSION
fi
else
echo " Изменений в backend нет, версия не обновляется"
fi
exit 0