Skip to main content

Git Review Interface for Gerrit and Github

Project description

gri : Git Reduced Interface

gri is a CLI tool that lists git reviews from multiple servers in a way that makes easier to to identify which one need you attention.

Currently supported backends are Gerrit and GitHub but it should be easy to add others if needed.

screenshot

Features

  • combines results from multiple Gerrit or GitHub servers
  • uses terminal clickable links to make it easy to access these reviews
  • displays important metadata related to reviews in a compressed format
  • reviews are sorted based on probablility of getting merged
  • allows user to abandon very old reviews
  • can be used to query:
    • already merged reviews
    • incoming reviews (where you are a reviewer)
    • reviewes created by other users than yourself
  • produce HTML reports

Installing

pip install gri

Usage

You can just run gri, or python -m gri in order to get a list of your current reviews, aslo known as outgoing reviews.

GRI uses a simple config file ~/.config/gri/gri.yaml but when the file is missing, it will try to load servers from ~/.gertty.yaml in case you have one.

$ gri --help
Usage: gri [OPTIONS] COMMAND1 [ARGS]... [COMMAND2 [ARGS]...]...

Options:
  -a, --abandon              Abandon changes (delete for drafts) when they are
                              >90 days old and with negative score. Requires -f
                             to perform the action.
  -z, --abandon-age INTEGER  default=90, number of days for which changes are
                             subject to abandon
  -u, --user TEXT            Query another user than self
  -s, --server TEXT          [0,1,2] key in list of servers, Query a single
                             server instead of all
  -o, --output TEXT          Filename to dump the result in, currently only
                             HTML is supported
  -f, --force                Perform potentially destructive actions.
  -d, --debug                Debug mode
  --help                     Show this message and exit.

Commands:
  incoming  Incoming reviews (not mine)
  merged    merged in the last number of days
  owned     Changes originated from current user (implicit)

Contributing

Are you missing a feature, just check if there is a bug open for it and add a new one if not. Once done, you are welcomed to make a PR that implements the missing change.

Related tools

  • git-review is the git extension for working with gerrit, where I am also one of the core contributors.
  • gertty is a very useful tui for gerrit which inspired me but which presents one essential design limitation: it does not work with multiple Gerrit servers.
  • gerrit-view is a vscode plugin that can be installed from Visual Studio Marketplace.

Notes

  1. gri name comes from my attempt to find a short name that was starting with g (from git/gerrit) and preferably sounds like cli.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gri-0.6.tar.gz (17.4 kB view details)

Uploaded Source

Built Distribution

gri-0.6-py3-none-any.whl (16.5 kB view details)

Uploaded Python 3

File details

Details for the file gri-0.6.tar.gz.

File metadata

  • Download URL: gri-0.6.tar.gz
  • Upload date:
  • Size: 17.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.50.0 CPython/3.8.6

File hashes

Hashes for gri-0.6.tar.gz
Algorithm Hash digest
SHA256 b2f239526a6aa92fef055fb792663a30cf68c58cb5e668f36902d525ce3d8fcb
MD5 4dace92c6b344bfb2861e0a720146973
BLAKE2b-256 45d32af4838a76db54d684a87a0e3664a10213373818851cb182fbeaac6c319f

See more details on using hashes here.

File details

Details for the file gri-0.6-py3-none-any.whl.

File metadata

  • Download URL: gri-0.6-py3-none-any.whl
  • Upload date:
  • Size: 16.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.50.0 CPython/3.8.6

File hashes

Hashes for gri-0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 4cb169d1bfd980c67d9b4ec992e72e7c977fbf94937f9bea5271785a4bcddc9e
MD5 ee17d7f09242976513d5420b090f19f0
BLAKE2b-256 2abfd3913d2aba207aa9d5d558df6f1aa6de13484a963d8f8bb0c820212b5490

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page