NAME Dist::Zilla::Plugin::ChangelogFromGit - build CHANGES from git commits and tags VERSION version 0.002 SYNOPSIS In your dist.ini: [ChangelogFromGit] max_age = 365 tag_regexp = ^v\d+_\d+$ file_name = CHANGES wrap_column = 74 The example values are the defaults. DESCRIPTION This Dist::Zilla plugin writes a CHANGES file that contains formatted commit information from recent git logs. This plugin has the following configuration variables: * max_age It may be impractical to include the full change log in a mature project's distribution. "max_age" limits the changes to the most recent ones within a number of days. The default is about one year. Include two years of changes: max_age = 730 * tag_regexp This plugin breaks the changelog into sections delineated by releases, which are defined by release tags. "tag_regexp" may be used to focus only on those tags that follow a particular release tagging format. Some of the author's repositories contain multiple projects, each with their own specific release tag formats, so that changelogs can focus on particular projects' tags. For instance, POE::Test::Loops' release tags may be specified as: tag_regexp = ^ptl- * file_name Everyone has a preference for their change logs. If you prefer lowercase in your change log file names, you migt specify: file_name = Changes * wrap_column Changes from different contributors tend to vary in format. This plugin uses Text::Wrap to normalize the width of commit messages. The "wrap_column" parameter may be used to alter the reformatted line width. If 74 is to short, one might specify: wrap_column = 78 Subversion and CVS This plugin is almost entirely a copy-and-paste port of a command-line tool I wrote a while ago. I also have tools to generate change logs from CVS and Subversion commits. If anyone is interested, plugins for these other version control systems should be about an hour's work apiece. AUTHOR Rocco Caputo COPYRIGHT AND LICENSE This software is copyright (c) 2010 by Rocco Caputo. This is free software; you may redistribute it and/or modify it under the same terms as the Perl 5 programming language itself.