dav-m85 / busfactor
Find out which file in your git is poorly maintained
Installs: 11
Dependents: 0
Suggesters: 0
Security: 0
Stars: 6
Watchers: 1
Forks: 0
Open Issues: 0
Type:application
Requires
- knplabs/github-api: 1.2.1
- symfony/config: v2.4.2
- symfony/console: v2.4.2
- symfony/process: v2.4.2
- symfony/yaml: v2.4.2
- twig/twig: v1.15.1
This package is not auto-updated.
Last update: 2024-12-17 05:12:30 UTC
README
#busfactor
busfactor generates a coverage report indicating how much each contributor worked on each file of a git repo. It helps pinpoint part of the code that are poorly maintained/known by the teams working on it.
If someone gets hit by a bus, some files may become more difficult to maintain further.
It was inspired by a GoogleIO talk given by Brian Fitzpatrick, Ben Collins-Sussman, The Myth of the Genius Programmer.
Installation
With composer
composer global require "dav-m85/busfactor=0.2.*"
Make sure your global composer folder is in your PATH.
By cloning the repo
git clone http://github.com/dav-m85/busfactor.git
cd busfactor
composer install
As a dependency in another composer project
Add the following to your composer.json
{ "require-dev": { "dav-m85/busfactor": "0.2.*" } }
Then in your project folder:
composer install
Usage
Given you have a repository my/git/repository
, you can generate a report with following command
(output/parent/folder
has to be writeable):
busfactor generate my/git/repository output/parent/folder
Then open output/parent/folder/index.html
with your browser.
If you don't specify an output folder, the report will automatically be generated to out/
folder relative to
busfactor file.
If you intend to serve generated files, specify an asset-url options like this:
busfactor generate my/git/repository output/parent/folder --asset-url http://example.com/root/path
Contributing
You can contribute in various ways:
Report bugs in the project issues section. Please make sure you know how to report one, general understanding of this document may help ;)
You want to fix a bug? Take an issue or fill one, assign yourself on it and when done, submit a Pull Request. I'll do my best to read it in a timely fashion and approve it.
Note that this project is following Semantic Versioning 2.0.0.
You like this project? Fork it, star it, talk about it!
Testing
Tests use PHPUnit. Simply run the following command in busfactor project directory:
vendor/bin/phpunit
Credits
Maintainer: dav-m85
Contributors: Triiistan, you?
License
busfactor is released under the MIT license. A copy can be found inside the project here, or at http://opensource.org/licenses/mit-license.php
Related
- https://github.com/lafourchette/gitmirror (Repository class was borrowed from this project)