Skip to content

Commit 06f1353

Browse files
authored
Merge pull request #20 from PeterVinter/docs/enhance-changelog-documentation
docs: enhance changelog workflow documentation
2 parents 8e03263 + 75c7066 commit 06f1353

File tree

2 files changed

+59
-2
lines changed

2 files changed

+59
-2
lines changed

README.md

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -98,11 +98,22 @@ Our changelog follows the [Keep a Changelog](https://keepachangelog.com/) format
9898

9999
This project uses an automated changelog workflow that:
100100
- Updates CHANGELOG.md when PRs are merged to main
101-
- Determines change type from PR title (feat, fix, docs, etc.)
102-
- Increments version number automatically
101+
- Follows [Semantic Versioning](https://semver.org/) for version numbers:
102+
- Major (X.0.0): Breaking changes (feat! or BREAKING CHANGE)
103+
- Minor (0.X.0): New features (feat)
104+
- Patch (0.0.X): Bug fixes and small changes
105+
- Determines change type from PR title:
106+
- `feat:` → Added (new features)
107+
- `fix:` → Fixed (bug fixes)
108+
- `docs:` → Documentation
109+
- `refactor:` → Changed
110+
- `security:` → Security
111+
- `feat!:` or `BREAKING CHANGE` → Breaking Change
103112
- Creates a new PR with changelog updates
104113
- Follows [Keep a Changelog](https://keepachangelog.com/) format
105114

115+
For detailed workflow documentation, see [GitHub CLI Workflow Guide](docs/github_cli_workflow.md).
116+
106117
### Automated Releases
107118

108119
This project uses GitHub Actions for automated releases. The workflow is triggered when a new tag is pushed and includes:

docs/github_cli_workflow.md

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -125,6 +125,52 @@ gh run view <run-id>
125125
gh run watch <run-id>
126126
```
127127

128+
## Automated Changelog Workflow
129+
130+
Our repository uses an automated changelog workflow that follows [Semantic Versioning](https://semver.org/) and [Keep a Changelog](https://keepachangelog.com/) standards.
131+
132+
### Version Increment Rules
133+
- **Major Version (X.0.0)**: Breaking changes
134+
- Indicated by `feat!:` or `BREAKING CHANGE` in commit message
135+
- Example: `feat!: rename repository`
136+
- **Minor Version (0.X.0)**: New features
137+
- Indicated by `feat:` in commit message
138+
- Example: `feat: add new logging system`
139+
- **Patch Version (0.0.X)**: Bug fixes and small changes
140+
- All other commit types (`fix:`, `docs:`, etc.)
141+
- Example: `fix: resolve logging issue`
142+
143+
### Change Type Categories
144+
- `feat:` → Added
145+
- `fix:` → Fixed
146+
- `docs:` → Documentation
147+
- `refactor:` → Changed
148+
- `security:` → Security
149+
- `feat!:` or `BREAKING CHANGE` → Breaking Change
150+
151+
### Workflow Process
152+
1. Create a PR with conventional commit message:
153+
```bash
154+
gh pr create --title "feat: add new feature" --body "Description of the feature"
155+
```
156+
157+
2. After merge, the workflow automatically:
158+
- Determines change type from PR title
159+
- Increments version number
160+
- Updates CHANGELOG.md
161+
- Creates a new PR with changelog updates
162+
163+
3. Review and merge the changelog PR:
164+
```bash
165+
gh pr list # Find the changelog PR
166+
gh pr merge <number> --merge # Merge the changelog PR
167+
```
168+
169+
4. Verify the release:
170+
```bash
171+
gh release view <version> # e.g., v2.0.0
172+
```
173+
128174
## Common Workflows
129175

130176
### Feature Development Flow

0 commit comments

Comments
 (0)