NAME

Dist::Zilla::Stash::Store::Git - A common place to store and interface with git

VERSION

This document describes version 0.000002 of Dist::Zilla::Stash::Store::Git - released April 29, 2014 as part of Dist-Zilla-Stash-Store-Git.

SYNOPSIS

DESCRIPTION

This is a Dist::Zilla Store providing a common place to store, fetch and share configuration information as to your distribution's git repository, as well as your own preferences (e.g. git tag versioning scheme).

ATTRIBUTES

dynamic_config

This attribute contains all the configuration information provided to the store by the plugins performing the Dist::Zilla::Role::GitStore::ConfigProvider. Any values specified herein override those in the "default_config", and anything set by the store configuration (aka "store_config") similarly overrides anything here.

store_config

This attribute contains all the information passed to the store via the store's configuration, e.g. in the distribution's dist.ini. Any values specified herein override those in the "default_config", and anything returned by a plugin (aka "dynamic_config") similarly overrides anything here.

This is a read-only accessor to the "store_config" attribute.

config

This attribute contains a HashRef of all the known configuration values, from all sources (default, stash and plugins aka dynamic). It merges the "dynamic_config" into "store_config", and that result into "default_config", each time giving the hash being merged precedence.

If you're looking for "The Right Place to Find Configuration Values", this is it. :)

repo_root

Stores the repository root; by default this is the current directory.

tags

An ArrayRef of all existing tags in the repository.

previous_versions

A sorted ArrayRef of all previous versions of this distribution, as derived from the repository tags filtered through the regular expression given in the version.regexp.

METHODS

default_config

This method provides a HashRef of all the default settings we know about. At the moment, this is:

version.regexp => '^v(.+)$'
version.first  => '0.001'

You should never need to mess with this -- note that "store_config" (values passed to the store via configuration) and "dynamic_config" (values returned by the plugins performing the Dist::Zilla::Role::GitStore::ConfigProvider), respectively, override this.

dynamic_config

This is a read-only accessor to the "dynamic_config" attribute.

has_dynamic_config

True if we have been provided any configuration by plugins.

This is a read-only accessor to the "dynamic_config" attribute.

has_dynamic_config_for

True if plugin configuration has been provided for a given key, e.g.

do { ... } if $store->has_dynamic_config_for('version.first');

This is a read-only accessor to the "dynamic_config" attribute.

store_config

A read-only accessor to the store_config attribute.

This is a read-only accessor to the "store_config" attribute.

has_store_config

True if we have been provided any static configuration.

This is a read-only accessor to the "store_config" attribute.

has_store_config_for

True if static configuration has been provided for a given key, e.g.

do { ... } if $store->has_store_config_for('version.first');

This is a read-only accessor to the "store_config" attribute.

config

A read-only accessor returning the config HashRef.

This is a read-only accessor to the "config" attribute.

has_config

True if we have any configuration stored; false if not.

This is a read-only accessor to the "config" attribute.

has_no_config

The inverse of "has_config".

This is a read-only accessor to the "config" attribute.

has_config_for($key)

Returns true if we have configuration information for a given key.

This is a read-only accessor to the "config" attribute.

get_config_for($key)

Returns the value we have for a given key; returns undef if we have no configuration information for that key.

This is a read-only accessor to the "config" attribute.

repo_root

Returns the path to the repository root; this may be a relative path.

This is a read-only accessor to the "repo_root" attribute.

tags

A read-only accessor to the "tags" attribute.

previous_versions

A read-only accessor to the "previous_versions" attribute.

has_previous_versions

True if this distribution has any previous versions; that is, if any git tags match the version regular expression.

This is a read-only accessor to the "previous_versions" attribute.

earliest_version

Returns the earliest version known; undef if no such version exists.

This is a read-only accessor to the "previous_versions" attribute.

latest_version

Returns the latest version known; undef if no such version exists.

This is a read-only accessor to the "previous_versions" attribute.

SEE ALSO

Please see those modules/websites for more information related to this module.

SOURCE

The development version is on github at http://https://github.com/RsrchBoy/dist-zilla-stash-store-git and may be cloned from git://https://github.com/RsrchBoy/dist-zilla-stash-store-git.git

BUGS

Please report any bugs or feature requests on the bugtracker website https://github.com/RsrchBoy/dist-zilla-stash-store-git/issues

When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature.

AUTHOR

Chris Weyl <cweyl@alumni.drew.edu>

SAYING THANKS IN A MATERIALISTIC WAY

Please note I do not expect to be gittip'ed or flattr'ed for this work, rather it is simply a very pleasant surprise. I largely create and release works like this because I need them or I find it enjoyable; however, don't let that stop you giving me money if you feel like it ;)

flattr this! gittip me! Amazon Wishlist

COPYRIGHT AND LICENSE

This software is Copyright (c) 2014 by Chris Weyl.

This is free software, licensed under:

The GNU Lesser General Public License, Version 2.1, February 1999