GitHub release workflow with semantic versioning, changelogs, and release automation using gh CLI. Use when creating releases, tagging versions, or publishing changelogs.
View on GitHubFebruary 4, 2026
Select agents to install to:
npx add-skill https://github.com/yonatangross/skillforge-claude-plugin/blob/main/plugins/ork-devops/skills/release-management/SKILL.md -a claude-code --skill release-managementInstallation paths:
.claude/skills/release-management/# Release Management Automate releases with `gh release`, semantic versioning, and changelog generation. ## Quick Reference ### Create Release ```bash # Auto-generate notes from PRs gh release create v1.2.0 --generate-notes # With custom title gh release create v1.2.0 --title "Version 1.2.0: Performance Update" --generate-notes # Draft release (review before publishing) gh release create v1.2.0 --draft --generate-notes # Pre-release (beta, rc) gh release create v1.2.0-beta.1 --prerelease --generate-notes # With custom notes gh release create v1.2.0 --notes "## Highlights - New auth system - 50% faster search" # From notes file gh release create v1.2.0 --notes-file RELEASE_NOTES.md ``` ### List & View Releases ```bash # List all releases gh release list # View specific release gh release view v1.2.0 # View in browser gh release view v1.2.0 --web # JSON output gh release list --json tagName,publishedAt,isPrerelease ``` ### Manage Releases ```bash # Edit release gh release edit v1.2.0 --title "New Title" --notes "Updated notes" # Delete release gh release delete v1.2.0 # Upload assets gh release upload v1.2.0 ./dist/app.zip ./dist/app.tar.gz ``` --- ## Semantic Versioning ``` MAJOR.MINOR.PATCH │ │ │ │ │ └── Bug fixes (backwards compatible) │ └──────── New features (backwards compatible) └────────────── Breaking changes Examples: 1.0.0 → 1.0.1 (patch: bug fix) 1.0.1 → 1.1.0 (minor: new feature) 1.1.0 → 2.0.0 (major: breaking change) Pre-release: 2.0.0-alpha.1 (early testing) 2.0.0-beta.1 (feature complete) 2.0.0-rc.1 (release candidate) ``` --- ## Release Workflow ### Standard Release ```bash # 1. Ensure main is up to date git checkout main git pull origin main # 2. Determine version bump # Check commits since last release gh release view --json tagName -q .tagName # Current: v1.2.3 git log v1.2.3..HEAD --oneline # 3. Create and push tag git tag -a v1.3.0 -m "Release v1.3.0" git push origin