Scroll to navigation



hub-release - Manage GitHub releases.


hub release [--include-drafts] [--exclude-prereleases] [-L LIMIT] [-f FORMAT]
hub release show [-f FORMAT] TAG
hub release create [-dpoc] [-a FILE] [-m MESSAGE|-F FILE] [-t TARGET] TAG
hub release edit [options] TAG
hub release download TAG
hub release delete TAG


With no arguments, shows a list of existing releases.

With --include-drafts, include draft releases in the listing. With --exclude-prereleases, exclude non-stable releases from the listing.

Show GitHub release notes for TAG.
With --show-downloads, include the "Downloads" section.
Create a GitHub release for the specified TAG name. If git tag TAG doesn`t exist, it will be created at TARGET (default: current branch).
Edit the GitHub release for the specified TAG name. Accepts the same options as create command. Publish a draft with --draft=false.
When MESSAGE or FILE are not specified, a text editor will open pre-populated with current release title and body. To re-use existing title and body unchanged, pass -m "".
Download the assets attached to release for the specified TAG.
Delete the release and associated assets for the specified TAG.


-L, --limit
Display only the first LIMIT releases.
-d, --draft
Create a draft release.
-p, --prerelease
Create a pre-release.
-a, --attach=FILE
Attach a file as an asset for this release.
If FILE is in the "filename#text" format, the text after the # character is taken as asset label.
-m, --message=MESSAGE
The text up to the first blank line in MESSAGE is treated as the release title, and the rest is used as release description in Markdown format.
If multiple MESSAGE options are given, their values are concatenated as separate paragraphs.
-F, --file=FILE
Read the release title and description from FILE.
-e, --edit
Further edit the contents of FILE in a text editor before submitting.
-o, --browse
Open the new release in a web browser.
-c, --copy
Put the URL of the new release to clipboard instead of printing it.
-t, --commitish=TARGET
A commit SHA or branch name to attach the release to, only used if TAG doesn`t already exist (default: main branch).
-f, --format=FORMAT
Pretty print releases using FORMAT (default: "%T%n"). See the "PRETTY FORMATS" section of git-log(1) for some additional details on how placeholders are used in format. The available placeholders for issues are:
%U: the URL of this release
%uT: tarball URL
%uZ: zipball URL
%uA: asset upload URL
%S: state (i.e. "draft", "pre-release")
%sC: set color to yellow or red, depending on state
%t: release name
%T: release tag
%b: body
%as: the list of assets attached to this release
%cD: created date-only (no time of day)
%cr: created date, relative
%ct: created date, UNIX timestamp
%cI: created date, ISO 8601 format
%pD: published date-only (no time of day)
%pr: published date, relative
%pt: published date, UNIX timestamp
%pI: published date, ISO 8601 format
%n: newline
%%: a literal %
The git tag name for this release.


hub(1), git-tag(1)
March 2019 GITHUB