Baike.dev
All toolsOnline toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
G

github-release

> 编程语言
Open source

Commandline app to create and edit releases on Github (and upload artifacts)

1.5K stars0 likes1 views
WebsiteGitHub

About

Commandline app to create and edit releases on Github (and upload artifacts)

github-release

A small commandline app written in Go that allows you to easily create and delete releases of your projects on Github. In addition it allows you to attach files to those releases.

It interacts with the github releases API. Though it's entirely possible to do all these things with cURL, it's not really that user-friendly. For example, you need to first query the API to find the id of the release you want, before you can upload an artifact. github-release takes care of those little details.

It might still be a bit rough around the edges, pull requests are welcome!

How to install

If you don't have the Go toolset installed, and you don't want to, but still want to use the app, you can download binaries for your platform on the releases page. Yes, that's dogfooding, check the makefile!

If you have Go installed, you can just do:

bash
go install github.com/github-release/github-release

This will automatically download, compile and install the app.

After that you should have a github-release executable in your $GOPATH/bin.

How to use

NOTE: for these examples I've created a github token and set it as the env variable GITHUB_TOKEN. github-release will automatically pick it up from the environment so that you don't have to pass it as an argument.

…

Errata

The release command does not have an --auth-user flag because in practice, Github ignores the --auth-user flag when validating releases. The only thing that matters is passing a token that has permission to create the release.

GitHub Enterprise Support

You can point to a different GitHub API endpoint via the environment variable GITHUB_API:

bash
export GITHUB_API=http://github.company.com/api/v3

Used libraries

Package Description License
github.com/dustin/go-humanize humanize file sizes MIT
github.com/tomnomnom/linkheader GH API pagination MIT
github.com/voxelbrain/goptions option parsing BSD
github.com/kevinburke/rest HTTP client MIT

Todo

  • Check if an artifact is already uploaded before starting a new upload

Copyright

Copyright (c) 2014-2017, Nicolas Hillegeer. All rights reserved. Copyright (c) 2020, Meter, Inc. All rights reserved.

Issues· 33 open

View all issuesOpen on GitHub

No open issues yet, or sync has not completed.

> Tags

Go

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category编程语言
PricingOpen source

> Related tools

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言