albertyw/git-reviewers


Intelligently find code reviewers

License: MIT

Language: Python

Keywords: code-review, git, git-review, python-3, reviewer


git-reviewers

PyPI Python Versions

Codeship Status for albertyw/git-reviewers Updates Maintainability Test Coverage

Intelligently find code reviewers. See also, git-browse.

Installation

Homebrew (preferred for MacOS)

If you use Homebrew, you can install git-reviewers through the homebrew-albertyw tap:

brew install albertyw/albertyw/git-reviewers

Manual

If you don't use Homebrew, first clone this repository to somewhere on your system (perhaps in your dotfiles repository), then run <REPOSITORY_LOCATION>/install.sh.

After installation, you can modify any default flags for git-reviewers in ~/.gitconfig

Usage

usage: reviewers.py [-h] [-v] [--verbose] [-i IGNORE] [-j JSON] [-c]

Suggest reviewers for your diff. https://github.com/albertyw/git-reviewers

optional arguments:
  -h, --help            show this help message and exit
  -v, --version         show program's version number and exit
  --verbose             verbose mode
  -i IGNORE, --ignore IGNORE
                        ignore a list of reviewers (comma separated)
  -j JSON, --json JSON  json file to read configs from, overridden by CLI
                        flags
  -c, --copy            Copy the list of reviewers to clipboard, if available
  -b BASE_BRANCH, --base-branch BASE_BRANCH
                        Compare against a base branch (default: master)

Finders

git-reviewers is componsed of a set of strategies for generating lists of reviewers, or Finders. They return a weighted set of reviewers which is then sorted and recommended to you. They include:

  • FindLogReviewers - Generate a list of reviewers based on committers to your committed (but not merged with master) files
  • FindHistoricalReviewers - Generate reviewers based on the repository committers as a whole
  • FindArcCommitReviewers - Generate reviewers based on arc commit messages for files which you have modified on your branch

Configuration

git-reviewers supports reading configuration from a configuration file with the --json flag. The configuration file accepts json with the following fields (all fields optional):

{
    "verbose": false,
    "copy": false,
    "ignore": ["a", "b", "c"],
    "base_branch": "master"
}

git-reviewers will also by default search for and load a json configuration file at ~/.git/reviewers.

Development

pip install -r requirements-test.txt
coverage run setup.py test
coverage report
flake8

Publishing

pip install twine
python setup.py sdist bdist_wheel
twine upload dist/*

Need to also update albertyw/homebrew-albertyw.

Project Statistics

Sourcerank 5
Repository Size 105 KB
Stars 12
Forks 2
Watchers 2
Open issues 9
Dependencies 3
Contributors 2
Tags 24
Created
Last updated
Last pushed

Top Contributors See all

Albert Wang Marcin Radomski

Packages Referencing this Repo

git-reviewers
Suggest reviewers for your git branch
Latest release 0.13.2 - Updated - 12 stars

Recent Tags See all

v0.13.2 September 05, 2019
v0.13.1 September 05, 2019
v0.13.0 March 25, 2019
v0.12.2 February 23, 2019
v0.12.1 February 06, 2019
v0.12.0 February 04, 2019
v0.11.1 December 25, 2018
v0.11.0 November 27, 2018
v0.10.0 October 15, 2018
v0.9.0 July 04, 2018
v0.8.0 March 28, 2018
v0.7.0 March 25, 2018
v0.6.1 December 24, 2017
v0.6.0 December 17, 2017
v0.5.0 November 19, 2017

Something wrong with this page? Make a suggestion

Last synced: 2019-09-05 18:34:25 UTC

Login to resync this repository