brian d foy

NAME

Module::Release::Git - Use Git with Module::Release

SYNOPSIS

The release script automatically loads this module if it sees a .git directory. The module exports check_vcs, vcs_tag, and make_vcs_tag.

DESCRIPTION

Module::Release::Git subclasses Module::Release, and provides its own implementations of the check_vcs() and vcs_tag() methods that are suitable for use with a Git repository.

These methods are automatically exported in to the callers namespace using Exporter.

This module depends on the external git binary (so far).

check_vcs()

Check the state of the Git repository.

vcs_tag(TAG)

Tag the release in local Git.

make_vcs_tag

By default, examines the name of the remote file (i.e. Foo-Bar-0.04.tar.gz) and constructs a tag string like release-0.04 from it. Override this method if you want to use a different tagging scheme, or don't even call it.

get_vcs_tag_format

Return the tag format. It's a sprintf-like syntax, but with one format:

        %v  replace with the full version
        

If you've set in the configuration, it uses that. Otherwise it returns release-%v.

vcs_exit

Perform repo tasks post-release. This one pushes origin to master and pushes tags.

TO DO

Use Gitlib.pm whenever it exists
More options for tagging

SEE ALSO

Module::Release::Subversion, Module::Release

SOURCE AVAILABILITY

This module is in Github:

        https://github.com/briandfoy/module-release-git

AUTHOR

brian d foy, <bdfoy@cpan.org>

COPYRIGHT AND LICENSE

Copyright (c) 2007-2014, brian d foy, All Rights Reserved.

You may redistribute this under the same terms as Perl itself.