Simple script to be used as the --to-cmd/--cc-cmd parameter on git's send-email command.
Project Description
‘TeamControl’ is a git send-email --to-cmd/--cc-cmd tool for repositories with multiple teams and/or constantly changing teams without a mailing-list.
Install
Use your favorite tool to download from the Cheeseshop and install:
pip install teamcontrol
Or:
easy_install teamcontrol
If you’d rather download and install from the sources, simply run:
python setup.py install
Setup
A project using ‘TeamControl’ must have a configuration file easily accessible for every developer (either versioned along the sources or publicly available somewhere).
Configuration File
A configuration file is a basic ini-like file with sections describing teams and a set of rules which might trigger the inclusion of it’s members on a code review request. Example:
[members] batman = bruce@wainecorp.com ironman = tony@starkindustries.com superman = jkclark@dailyplanet.com thor = thealmighty@valhalla.asgard.com wonderwoman = diana@themyscira.net [rules] avcomics = ^comics/[Aa]vengers dc = ^publisher/dc jlcomics = ^comics/(the)?\justiceleague marvel = ^published/marvel [justiceleague] members = batman, superman, wonderwoman rules = dc, jlcomics [avengers] members = thor, ironman rules = avcomics
There are two special sections in this file: [members] and [rules]: they define aliases for named used for members = and rules = options to ease organization.
Every other defined section is regarded as a team, as long as they define the members = and rules = options (they can be empty, but must exist).
So, what is a “rule”? A Rule is a valid Python regular expression which will be matched against the files being modified by a given patch (generated by git-format-patch). If any rule matches with one of the modified files the team this rule belongs to will be included in the review request.
Per-user Setup
Now that we have a configuration file publicly accessible for every developer each must setup her git configuration to call the application when asking for review:
# tip: you can set cccmd instead of tocmd if you prefer git config sendemail.tocmd /usr/bin/teamcontrol
And adjust properties required by “TeamControl”:
git config teamcontrol.config /path/to/teamcontrol/config/file git config teamcontrol.team justiceleague
Release history Release notifications
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Filename, size & hash SHA256 hash help | File type | Python version | Upload date |
---|---|---|---|
teamcontrol-0.0.2-py2.7.egg (17.2 kB) Copy SHA256 hash SHA256 | Egg | 2.7 | Jun 25, 2011 |
teamcontrol-0.0.2-py3.2.egg (17.4 kB) Copy SHA256 hash SHA256 | Egg | 3.2 | Jun 25, 2011 |
teamcontrol-0.0.2.tar.gz (7.8 kB) Copy SHA256 hash SHA256 | Source | None | Jun 25, 2011 |