dextero / git-reviewers

Intelligently find code reviewers

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

git-reviewers

PyPI Python Versions

Codeship Status for albertyw/git-reviewers Dependency Status Code Climate 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] [-i IGNORE] [-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
  -i IGNORE, --ignore IGNORE
                        ignore a list of reviewers (comma separated)
  -c, --copy            Copy the list of reviewers to clipboard, if available

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
  • 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"]
}

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

About

Intelligently find code reviewers

License:MIT License


Languages

Language:Python 97.1%Language:Shell 2.9%