gitty
is a smart little CLI helper for git projects, that shows you all the
relevant issues, pull requests and changes at a quick glance, right on the
command-line. It currently supports the GitHub, GitLab, and Gitea APIs.
- Binaries for Linux, FreeBSD, OpenBSD, macOS, Windows
Make sure you have a working Go environment (Go 1.17 or higher is required). See the install instructions.
Compiling gitty is easy, simply run:
git clone https://github.com/muesli/gitty.git
cd gitty
go build
Note: In order to access the APIs of hosting providers like GitHub, GitLab, or
Gitea, gitty
requires you to provide valid access tokens in an environment
variable called GITTY_TOKENS
.
You can provide tokens for multiple hosts and services in this format:
github.com=abc123;gitlab.com=xyz890;myhost.tld=...
You can create a new token in your profile settings: Developer settings > Personal access tokens > Generate new token
Make sure to enable the repo:status
, public_repo
, read:user
, and
read:org
permissions in particular.
You can create a new token in your profile settings: User Settings > Access Tokens
Make sure to enable the read_user
, read_api
, and read_repository
permissions.
You can create a new token in your profile settings: Settings > Applications > Manage Access Tokens
You can start gitty
with either a path or a URL as an argument. If no argument
was provided, gitty
will operate on the current working directory.
$ gitty /some/repo
$ gitty github.com/some/project
$ gitty https://myhost.tld/some/project
The following flags are supported:
-max-branch-age int
Max age of a branch in days to be considered active (default 28)
-max-branches int
Max amount of active branches to show (default 10)
-max-commits int
Max amount of commits to show (default 10)
-max-issues int
Max amount of issues to show (default 10)
-max-pull-requests int
Max amount of pull requests to show (default 10)
If you launch gitty
with the ID of an issue or pull request, it will open the
issue or pull request in your browser:
$ gitty [PATH|URL] 42
gitty also lets you monitor entire namespaces, giving you an overview of all its repositories:
$ gitty --all-projects github.com
Per default it will show the projects of the token owner, but you can also retrieve the projects of other namespaces:
$ gitty --all-projects --namespace muesli github.com
Got some feedback or suggestions? Please open an issue or drop me a note!