Dist::Zilla::Plugin::Git::Contributors - Add contributor names from git to your distribution
In your dist.ini:
This is a Dist::Zilla plugin that extracts all names and email addresses from git commits in your repository and adds them to the distribution metadata under the x_contributors key. It takes a minimalist approach to this -- no data is stuffed into other locations, including stashes -- if other plugins wish to work with this information, they should extract it from the distribution metadata.
This module uses unicode comparison routines as well as casefolding semantics (when available); Perl 5.016 is recommended.
When true, authors (as defined by the preamble section in your dist.ini) are added to the list of contributors. When false, authors are filtered out of the list of contributors. Defaults to false.
Defaults to true; set to false to remove the current user (who is doing the distribution release) from the contributors list. It is applied after include_authors, so you will be removed from the list even if you are (one of the) distribution author(s) and include_authors = 1.
include_authors = 1
You probably don't want this option -- it was added experimentally to change how contributors are displayed on http://metacpan.org, but it was decided that this should be managed at a different layer than the metadata.
When order_by = name, contributors are sorted alphabetically (ascending); when order_by = commits, contributors are sorted by number of commits made to the repository (descending). The default value is name.
order_by = name
order_by = commits
Available since version 0.007.
Indicates a path, relative to the repository root, to search for commits in. Technically: "Consider only commits that are enough to explain how the files that match the specified paths came to be." Defaults to the repository root. Can be used more than once. You should almost certainly not need this.
Available since version 0.011.
Any contributor entry matching this (unanchored, case-sensitive) regular expression is removed from inclusion. Can be used more than once.
If you or a contributor uses multiple names and/or email addresses to make commits and would like them mapped to a canonical value (e.g. their cpan.org address), you can do this by adding a .mailmap file to your git repository, with entries formatted as described in "MAPPING AUTHORS" in git help shortlog (https://www.kernel.org/pub/software/scm/git/docs/git-shortlog.html).
git help shortlog
Duplicate names that share the same email address will be removed automatically (keeping the form associated with the latest commit).
You can add the contributor names to your module documentation by using Pod::Weaver in conjunction with Pod::Weaver::Section::Contributors.
This module aims to properly handle non-ascii characters in contributor names. However, on Windows you might need to do a bit more: see https://github.com/msysgit/msysgit/wiki/Git-for-Windows-Unicode-Support for supported versions and extra configurations you may need to apply.
How I'm using Dist::Zilla to give credit to contributors
Pod::Weaver::Section::Contributors - weaves x_contributors data into a pod section
Dist::Zilla::Plugin::Meta::Contributors - adds an explicit list of names to x_contributors
Dist::Zilla::Plugin::ContributorsFromGit - more dependencies, problematic tests, passes around a lot of extra data in stashes unnecessarily, not unicode-clean
Dist::Zilla::Plugin::ContributorsFromPod - takes the list of contributors from pod
Dist::Zilla::Plugin::ContributorsFile - adds CONTRIBUTORS file, containing names from x_contributors metadata
Bugs may be submitted through the RT bug tracker (or bug-Dist-Zilla-Plugin-Git-Contributors@rt.cpan.org).
There is also a mailing list available for users of this distribution, at http://dzil.org/#mailing-list.
There is also an irc channel available for users of this distribution, at #distzilla on irc.perl.org.
I am also usually active on irc, as 'ether' at irc.perl.org and irc.freenode.org.
Karen Etheridge <firstname.lastname@example.org>
Kent Fredric <email@example.com>
Ioan Rogers <firstname.lastname@example.org>
Klaus Eichner <email@example.com>
Matthew Horsfall <firstname.lastname@example.org>
Mohammad S Anwar <email@example.com>
Ricardo Signes <firstname.lastname@example.org>
This software is copyright (c) 2014 by Karen Etheridge.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
To install Dist::Zilla::Plugin::Git::Contributors, copy and paste the appropriate command in to your terminal.
perl -MCPAN -e shell
For more information on module installation, please visit the detailed CPAN module installation guide.