Lesson 19 / 20

Releases & Tags

Mark versions with Git tags, publish GitHub Releases with notes and assets, and follow semantic versioning.

Tag a version

A tag is a named pointer to a commit. Push it, then create a Release from it.

git tag -a v1.2.0 -m "Release 1.2.0"
git push origin v1.2.0
gh release create v1.2.0 --generate-notes ./dist/app.zip

Semantic versioning

Use MAJOR.MINOR.PATCH: major for breaking changes, minor for new features, patch for fixes. Auto-generated release notes list merged pull requests.

Trigger a workflow on push: tags: ['v*'] to build and publish artifacts automatically for each release.