
Git::Megapull - clone or update all repositories found elsewhere

version 0.101751

This library implements the git-megapull command,
which will find a list of remote repositories and clone them.
If they already exist,
they will be updated from their origins,
instead.

git-megapull [-bcs] [long options...]
-b --bare produce bare clones
-c --clonely only clone things that do not exist; skip others
-s --source the source class (or a short form of it)
The source may be given as a full Perl class name prepended with an equals sign, like =Git::Megapull::Source::Github or as a short form, dropping the standard prefix. The previous source, for example, could be given as just Github.
If no --source option is given, the megapull.source option in ~/.gitconfig will be consulted.

* prevent updates that are not fast forwards * do not assume "master" is the correct branch to merge

Right now, the API for how sources work is pretty lame and likely to change. Basically, a source is a class that implements the repo_uris method, which returns a hashref like { $repo_name => $repo_uri, ... }. This is likely to be changed slightly to instantiate sources with parameters and to allow repos to have more attributes than a name and URI.

Ricardo SIGNES <rjbs@cpan.org>

This software is copyright (c) 2011 by Ricardo SIGNES.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.