Provided by: libdist-zilla-plugin-git-perl_2.043-1_all bug

NAME

       Dist::Zilla::Plugin::Git::GatherDir - Gather all tracked files in a Git working directory

VERSION

       version 2.043

SYNOPSIS

       In your dist.ini:

           [Git::GatherDir]
           root = .                     ; this is the default
           prefix =                     ; this is the default
           include_dotfiles = 0         ; this is the default
           include_untracked = 0        ; this is the default
           exclude_filename = dir/skip  ; there is no default
           exclude_match = ^local_      ; there is no default

DESCRIPTION

       This is a trivial variant of the GatherDir plugin.  It looks in the directory named in the
       "root" attribute and adds all the Git tracked files it finds there (as determined by "git
       ls-files").  If the root begins with a tilde, the directory name is passed through
       "glob()" first.

       Most users just need:

         [Git::GatherDir]

       ...and this will pick up all tracked files from the current directory into the dist.  You
       can use it multiple times, as you can any other plugin, by providing a plugin name.  For
       example, if you want to include external specification files into a subdir of your dist,
       you might write:

         [Git::GatherDir]
         ; this plugin needs no config and gathers most of your files

         [Git::GatherDir / SpecFiles]
         ; this plugin gets all tracked files in the root dir and adds them under ./spec
         root   = ~/projects/my-project/spec
         prefix = spec

ATTRIBUTES

   root
       This is the directory in which to look for files.  If not given, it defaults to the dist
       root -- generally, the place where your dist.ini or other configuration file is located.
       It may begin with "~" (or "~user") to mean your (or some other user's) home directory.  If
       a relative path, it's relative to the dist root.  It does not need to be the root of a Git
       repository, but it must be inside a repository.

   prefix
       This parameter can be set to gather all the files found under a common directory.  See the
       description above for an example.

   include_dotfiles
       By default, files will not be included if they begin with a dot.  This goes both for files
       and for directories relative to the "root".

       In almost all cases, the default value (false) is correct.

   include_untracked
       By default, files not tracked by Git will not be gathered.  If this is set to a true
       value, then untracked files not covered by a Git ignore pattern (i.e. those reported by
       "git ls-files -o --exclude-standard") are also gathered (and you'll probably want to use
       Git::Check to ensure all files are checked in before a release).

       "include_untracked" requires at least Git 1.5.4, but you should probably not use it if
       your Git is older than 1.6.5.2.  Versions before that would not list files matched by your
       .gitignore, even if they were already being tracked by Git (which means they will not be
       gathered, even though they should be).  Whether that is a problem depends on the contents
       of your exclude files (including the global one, if any).

   follow_symlinks
       Git::GatherDir does not honor GatherDir's follow_symlinks option.  While the attribute
       exists (because Git::GatherDir is a subclass), setting it has no effect.

       Directories that are symlinks will not be gathered.  Instead, you'll get a message saying
       "WARNING: %s is symlink to directory, skipping it".  To suppress the warning, add that
       directory to "exclude_filename" or "exclude_match".  To gather the files in the symlinked
       directory, use a second instance of GatherDir or Git::GatherDir with appropriate "root"
       and "prefix" options.

       Files which are symlinks are always gathered.

   exclude_filename
       To exclude certain files from being gathered, use the "exclude_filename" option. This may
       be used multiple times to specify multiple files to exclude.

   exclude_match
       This is just like "exclude_filename" but provides a regular expression pattern.  Files
       matching the pattern are not gathered.  This may be used multiple times to specify
       multiple patterns to exclude.

SUPPORT

       Bugs may be submitted through the RT bug tracker
       <https://rt.cpan.org/Public/Dist/Display.html?Name=Dist-Zilla-Plugin-Git> (or
       bug-Dist-Zilla-Plugin-Git@rt.cpan.org <mailto:bug-Dist-Zilla-Plugin-Git@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" <irc://irc.perl.org/#distzilla>.

       I am also usually active on irc, as 'ether' at "irc.perl.org".

AUTHOR

       Jerome Quelin

COPYRIGHT AND LICENCE

       This software is copyright (c) 2009 by Jerome Quelin.

       This is free software; you can redistribute it and/or modify it under the same terms as
       the Perl 5 programming language system itself.