GH-RELEASE-UPLOAD(1) GitHub CLI manual GH-RELEASE-UPLOAD(1)

# [NAME](#NAME)

gh-release-upload - Upload assets to a release

# [SYNOPSIS](#SYNOPSIS)

**gh release upload &lt;tag&gt; &lt;files&gt;... \[flags]**

# [DESCRIPTION](#DESCRIPTION)

Upload asset files to a GitHub Release.

To define a display label for an asset, append text starting with **#** after the file name.

When using **--clobber**, existing assets are deleted before new assets are uploaded. If the upload fails, the original assets will be lost.

# [OPTIONS](#OPTIONS)

[**--clobber**](#clobber)

Delete and re-upload existing assets of the same name

# [OPTIONS INHERITED FROM PARENT COMMANDS](#OPTIONS_INHERITED_FROM_PARENT_COMMANDS)

[**-R**, **--repo** **&lt;\[HOST/\]OWNER/REPO&gt;**](#R)

Select another repository using the \[HOST/]OWNER/REPO format

# [EXIT CODES](#EXIT_CODES)

0: Successful execution

1: Error

2: Command canceled

4: Authentication required

NOTE: Specific commands may have additional exit codes. Refer to the command's help for more information.

# [SEE ALSO](#SEE_ALSO)

[**gh-release(1)**](/man/os/gh/gh-release.1)

Oct 2026

---

Document: gh-release-upload(1) from gh 2.103.3-r0 (Chainguard OS)
Source: https://github.com/cli/cli
