The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Dist::Zilla::PluginBundle::Starter::Git - A minimal Dist::Zilla plugin bundle for git workflows

SYNOPSIS

  ; dist.ini
  name    = My-Cool-Distribution
  author  = Example Jones <jones@example.com>
  license = Perl_5
  copyright_holder = Example Jones
  copyright_year   = 2017
  version = 0.001
  
  [@Starter::Git]      ; all that is needed to start
  revision = 5         ; always defaults to revision 3
  
  ; configuring examples
  installer = ModuleBuildTiny
  -remove = Pod2Readme ; to use [Readme::Brief] instead, for example
  ExecDir.dir = script ; change the directory used by [ExecDir]
  managed_versions = 1 ; uses the main module version, and bumps module versions after release
  regenerate = LICENSE ; copy LICENSE to repository after release or dzil regenerate

DESCRIPTION

The [@Starter::Git] plugin bundle for Dist::Zilla is a subclass of the [@Starter] plugin bundle designed to support a Git-based workflow.

In addition to the standard [@Starter] behavior, this bundle restricts the gathered files to those committed to the git repository, allowing .gitignore to also ignore files when assembling the distribution; and commits, tags, and pushes after a successful release.

See the Dist::Zilla::Starter guide and the base [@Starter] documentation for more information, as this documentation only details the specifics of this subclass.

For one-line initialization of a new [@Starter::Git]-based distribution, try Dist::Zilla::MintingProfile::Starter::Git.

OPTIONS

[@Starter::Git] inherits the options from [@Starter], and can similarly be further configured by the composed roles, as in "CONFIGURING".

revision

  [@Starter::Git]
  revision = 5

As in "revision" in Dist::Zilla::PluginBundle::Starter, but defaults to revision 3. [@Starter::Git] requires at least revision 3.

installer

As in "installer" in Dist::Zilla::PluginBundle::Starter.

managed_versions

As in "managed_versions" in Dist::Zilla::PluginBundle::Starter, and additionally uses [Git::Commit] a second time after [BumpVersionAfterRelease] to commit the bumped versions (with the plugin name Version_Bump_Commit).

regenerate

As in "regenerate" in Dist::Zilla::PluginBundle::Starter, and allows changes to the copied files to be committed in the Release_Commit.

REVISIONS

The [@Starter::Git] plugin bundle supports the following revisions.

Revision 3

Revision 3 is the default and is equivalent to using the following plugins:

[Git::GatherDir]
[MetaYAML]
[MetaJSON]
[License]
[Pod2Readme]
[PodSyntaxTests]
[Test::ReportPrereqs]
[Test::Compile]
  xt_mode = 1
[MakeMaker]
[Manifest]
[PruneCruft]
[ManifestSkip]
[RunExtraTests]
[Git::Check]
  allow_dirty = dist.ini
  allow_dirty = Changes
[TestRelease]
[ConfirmRelease]
[UploadToCPAN]
[Git::Commit / Release_Commit]
  allow_dirty = dist.ini
  allow_dirty = Changes
  add_files_in = /
  commit_msg = %v%n%n%c
[Git::Tag]
  tag_format = %v
  tag_message = %v
[Git::Push]
[MetaConfig]
[MetaNoIndex]
  directory = t
  directory = xt
  directory = inc
  directory = share
  directory = eg
  directory = examples
[MetaProvides::Package]
  inherit_version = 0
[ShareDir]
[ExecDir]

This revision differs from Revision 3 in [@Starter] as follows:

Revision 4

Revision 4 has no specific differences beyond the changes in Revision 4 in [@Starter].

Revision 5

Revision 5 has no specific differences beyond the changes in Revision 5 in [@Starter].

BUGS

Report any issues on the public bugtracker.

AUTHOR

Dan Book <dbook@cpan.org>

COPYRIGHT AND LICENSE

This software is Copyright (c) 2018 by Dan Book.

This is free software, licensed under:

  The Artistic License 2.0 (GPL Compatible)

SEE ALSO

Dist::Zilla, Dist::Zilla::PluginBundle::Starter, Dist::Milla, Dist::Zilla::MintingProfile::Starter::Git