gh release create Publish a release on GitHub
Creates a release for a tag, with notes and optional downloadable files. If the tag does not exist yet, gh creates it for you.
Synopsis
gh release create [TAG] [FILES...] [FLAGS]
Common options
| Option or form | What it does |
|---|---|
-t, --title TEXT | Release title |
-n, --notes TEXT | Release notes |
-F, --notes-file FILE | Read the notes from a file |
--generate-notes | Write notes automatically from merged pull requests |
-d, --draft | Save it as a draft |
-p, --prerelease | Mark it as a pre-release |
--target BRANCH | Branch or commit to tag if the tag is new |
Examples
gh release create v1.2.0 --generate-notes
gh release create v1.2.0 --title "Version 1.2.0" --notes "Adds search."
gh release create v1.2.0 dist/app.zip dist/app.tar.gz
gh release create v1.2.0 --draft --generate-notes
gh release create v2.0.0-beta.1 --prerelease
Notes
- Use semantic version tags such as v1.2.0 so the order is clear.
- Attach more files later with gh release upload TAG FILE.
- If you already pushed the tag with git push, gh uses it as it is.
See also
Last reviewed 2026-10-09.