Описание
add-changelog — slash-команда истории изменений: формат Keep a Changelog — стандартная структура Added/Changed/Fixed, генерация — запись на основе реальных изменений, поддержание — актуальный changelog между релизами. Для проектов, чья история версий должна отвечать на вопрос «что поменялось и зачем обновляться».
Что умеет:
— вести changelog по Keep a Changelog;
— генерировать записи из изменений;
— поддерживать историю между релизами;
— запускаться одной командой.
Add Changelog Entry
Generate and maintain project changelog: $ARGUMENTS
Current State
- Existing changelog: @CHANGELOG.md (if exists)
- Recent commits: !
git log --oneline -10 - Current version: !
git describe --tags --abbrev=0 2>/dev/null || echo "No tags found" - Package version: @package.json (if exists)
Task
- Changelog Format (Keep a Changelog)
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [Unreleased]
### Added
- New features
### Changed
- Changes in existing functionality
### Deprecated
- Soon-to-be removed features
### Removed
- Removed features
### Fixed
- Bug fixes
### Security
- Security improvements
- Version Entries
## [1.2.3] - 2024-01-15
### Added
- User authentication system
- Dark mode toggle
- Export functionality for reports
### Fixed
- Memory leak in background tasks
- Timezone handling issues
- Automation Tools
# Generate changelog from git commits
npm install -D conventional-changelog-cli
npx conventional-changelog -p angular -i CHANGELOG.md -s
# Auto-changelog
npm install -D auto-changelog
npx auto-changelog
- Commit Convention
# Conventional commits for auto-generation
feat: add user authentication
fix: resolve memory leak in tasks
docs: update API documentation
style: format code with prettier
refactor: reorganize user service
test: add unit tests for auth
chore: update dependencies
- Integration with Releases
- Update changelog before each release
- Include in release notes
- Link to GitHub releases
- Tag versions consistently
Remember to keep entries clear, categorized, and focused on user-facing changes.