Group-Git
The group-git
tool allows you perform operations on many git
repositories at once. For example updating many repositores with the latest
upstream code:
bash
$ group-git pull
Would update all git repositories in the current directory.
Several git
comands have some extras such as status
which adds the
--quiet
parameter which will suppress output for repositories with not
changes.
There are also tool to help with various git repository servers such as
- Github
- Bitbucket Server (nee Stash)
- Gitosis
Repository Helpers
These helpers allow you to store your credentials in a group-git.yml
configuration file and will find all repositories you have access to. If you
use the group-git pull
command it will automatically clone any repository
not currently downloaded for you.
Tagging repositories
You can also tag repositories to limit opperations to a subset of available repositories. There are 3 ways to tag repositories:
- Add a tag file(s) to the root of the repository (eg `.my-tag.tag>)
- Use a tagger library,
Group::Git
comes with two, remore and local which determine if the repository has a remote or not. - The Bitbucket server helper will tag repositories with their project.
Extending with your own commands
Group::Git
looks for commands in the perl modules path Group::Git::Cmd
and it look in the path for any command in the form of group-git-cmd
or
git-cmd
as well as supoorting all the built in git commands. If you want
perform an operation you can write your own script put it your path and
Group::Git
will find it execute it the same was git would.
INSTALLATION
To install this module from CPAN:
```bash $ capnm Group::Git
or if you don't have the cpanm command
$ cpan Group::Git ```
Or from source run the following commands:
```
with cpanm
$ cpanm .
without
$ perl Build.PL $ ./Build $ ./Build test $ ./Build install ```
SUPPORT AND DOCUMENTATION
After installing, you can find documentation for this module with the perldoc command.
perldoc Group::Git
You can also look for information at:
RT, CPAN's request tracker
http://rt.cpan.org/NoAuth/Bugs.html?Dist=Group-Git
AnnoCPAN, Annotated CPAN documentation
http://annocpan.org/dist/Group-Git
CPAN Ratings
http://cpanratings.perl.org/d/Group-Git
Search CPAN
http://search.cpan.org/dist/Group-Git/
Source Code
git://github.com/ivanwills/Group-Git.git
COPYRIGHT AND LICENCE
Copyright (C) 2013-2016 Ivan Wills
This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.
See http://dev.perl.org/licenses/ for more information.