Suggest reviewers for your git branch
Project description
git-reviewers
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) filesFindHistoricalReviewers
- Generate reviewers based on the repository committers as a wholeFindArcCommitReviewers
- 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 details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for git_reviewers-0.13.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 598e1a89a610d98a889e381b60680a07e3e858a82779132f1c51514f02e859ec |
|
MD5 | fd3d410283bc9d9b708de265d0d1633f |
|
BLAKE2b-256 | e6cf5194713afeb915acddd9453030490986c5f9400359f464acce7347bbc532 |