Hi,
git-related is a tool to find out people that might be interested in your patch series.
It works by running `git blame` on every chunk your patches modify, and then presents a summary showing the roles of each person:
% git related --roles master..fc/asciidoctor/clean Junio C Hamano <gitster@pobox.com> (signer: 93%, author: 7%) brian m. carlson <sandals@crustytoothpaste.net> (author: 20%, helper: 3%) Christian Couder <chriscool@tuxfamily.org> (author: 7%, mentor: 7%) Jeff King <peff@peff.net> (author: 10%) Johannes Schindelin <Johannes.Schindelin@gmx.de> (author: 7%, signer: 3%) Martin Ågren <martin.agren@gmail.com> (author: 10%)
A lot of things have changed since v0.3, but the most important is the addition of a completely new tool that does something similar: git-who.
Unlike git-related, git-who does not work on any particular patch series, you can use any arguments `git log` accepts, and then presents a similar output to git-related.
Therefore you can specify queries:
% git who --roles -S'PERL_DEFINES' -- Makefile Junio C Hamano <gitster@pobox.com> (signer: 100%) Ævar Arnfjörð Bjarmason <avarab@gmail.com> (author: 75%, helper: 25%) Johannes Schindelin <johannes.schindelin@gmx.de> (helper: 25%) Dan Jacques <dnj@google.com> (author: 25%)
We can find out a summary for the whole history of git.git:
% git who --roles --since=2000 --threshold=1 Junio C Hamano <gitster@pobox.com> (signer: 64%, author: 15%, helper: 1%) Junio C Hamano <junkio@cox.net> (signer: 14%) Jeff King <peff@peff.net> (author: 8%, signer: 1%, reviewer: 1%) Johannes Schindelin <johannes.schindelin@gmx.de> (author: 4%) Shawn Pearce <spearce@spearce.org> (author: 3%, signer: 1%) Nguyễn Thái Ngọc Duy <pclouds@gmail.com> (author: 4%) Jonathan Nieder <jrnieder@gmail.com> (author: 2%, reviewer: 1%, signer: 1%) Linus Torvalds <torvalds@linux-foundation.org> (author: 2%) Michael Haggerty <mhagger@alum.mit.edu> (author: 2%) René Scharfe <l.s.r@web.de> (author: 2%) Ævar Arnfjörð Bjarmason <avarab@gmail.com> (author: 2%) brian m. carlson <sandals@crustytoothpaste.net> (author: 2%) Stefan Beller <sbeller@google.com> (signer: 1%) Eric Wong <normalperson@yhbt.net> (signer: 1%, acker: 1%) Elijah Newren <newren@gmail.com> (author: 2%) Christian Couder <chriscool@tuxfamily.org> (author: 1%) Linus Torvalds <torvalds@osdl.org> (signer: 1%) Derrick Stolee <dstolee@microsoft.com> (author: 1%) Jakub Narębski <jnareb@gmail.com> (author: 1%) Johannes Sixt <j6t@kdbg.org> (author: 1%) Eric Sunshine <sunshine@sunshineco.com> (author: 1%) Stefan Beller <stefanbeller@gmail.com> (author: 1%) Eric Wong <e@80x24.org> (author: 1%) SZEDER Gábor <szeder.dev@gmail.com> (author: 1%) Paul Mackerras <paulus@samba.org> (author: 1%, signer: 1%) Felipe Contreras <felipe.contreras@gmail.com> (author: 1%) Matthieu Moy <Matthieu.Moy@imag.fr> (signer: 1%)
git-related is similar to contrib/contacts/git-contacts, except with many many more features, and less bugs. In fact, git-contacts is a rewrite of git-related and it never achieved parity.
The v1.0 release consists of 81 commits, and here are some of the important changes:
* Make roles optional with --roles * Add new --files mode (much faster) * Fixed bug with boundary commits (present in git-contacts too) * Fixed bug with certain mailmaps * Parse many more roles (top 10%) * Completely revamped documentation * Add color * Improved performance * Improved tests * Code considerably simplified * Split option parsing into a new gem
To install them just:
gem install parseopt make install
It's written in Ruby, so you need Ruby.
Cheers.
https://github.com/felipec/git-related
-- Felipe Contreras