]> git.vpit.fr Git - perl/modules/rgit.git/blob - README
Require 5.8. Do not really want to support 5.6
[perl/modules/rgit.git] / README
1 NAME
2     rgit - Recursively execute a command on all the git repositories in a
3     directory tree.
4
5 VERSION
6     Version 0.04
7
8 SYNOPSIS
9         rgit [-K|-V|-I] [GIT_OPTIONS] COMMAND [COMMAND_ARGS]
10
11 DESCRIPTION
12     This utility recursively searches in the current directory (or in the
13     directory given by the "GIT_DIR" environment variable if it's set) for
14     all git repositories, sort this list by the repository path, "chdir"
15     into each of them, and executes the specified git command. Moreover,
16     those formats are substuted in the arguments before running the command
17     :
18
19     *   "^n" with the current repository name.
20
21     *   "^g" with the relative path to the current repository.
22
23     *   "^G" with the absolute path to the current repository.
24
25     *   "^w" with the relative path to the current repository's working
26         directory.
27
28     *   "^W" with the absolute path to the current repository's working
29         directory.
30
31     *   "^b" with a "bareified" relative path, i.e. "^g" if this is a bare
32         repository, and "^w.git" otherwise.
33
34     *   "^B" with an absolute version of the "bareified" path.
35
36     *   "^R" with the absolute path to the current root directory.
37
38     *   "^^" with a bare "^".
39
40     There are actually a few commands that are only executed once in the
41     current directory : "daemon", "gui", "help", "init" and "version". For
42     any of those, no format substitution is done.
43
44     You can specify which "git" executable to use with the "GIT_EXEC_PATH"
45     environment variable.
46
47 COMMAND LINE SWITCHES
48     "rgit" takes its options as the capital switches that comes before the
49     git command. It's possible to bundle them together. They are removed
50     from the argument list before calling "git".
51
52     *   "-K"
53
54         Keep processing on error. The default policy is to stop whenever an
55         error occured.
56
57     *   "-I"
58
59         Enables interactive mode when the standard input is a tty. Requires
60         Term::ReadKey to be installed. This lets you choose interactively
61         what to do when one of the commands returns a non-zero status.
62
63     *   "-V"
64
65         Outputs the version.
66
67 EXAMPLES
68     Execute "git gc" on all the repositories below the current directory :
69
70         rgit gc
71
72     Tag all the repositories with their name :
73
74         rgit tag ^n
75
76     Add a remote to all repositories in "/foo/bar" to their bare counterpart
77     in "qux" on host :
78
79         GIT_DIR="/foo/bar" rgit remote add host git://host/qux/^b
80
81 DEPENDENCIES
82     The core modules Carp, "Config", Cwd, Exporter, File::Find,
83     File::Spec::Functions and POSIX.
84
85     Object::Tiny.
86
87 AUTHOR
88     Vincent Pit, "<perl at profvince.com>", <http://profvince.com>.
89
90     You can contact me by mail or on "irc.perl.org" (vincent).
91
92 BUGS
93     Please report any bugs or feature requests to "bug-rgit at rt.cpan.org",
94     or through the web interface at
95     <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=rgit>. I will be
96     notified, and then you'll automatically be notified of progress on your
97     bug as I make changes.
98
99 SUPPORT
100     You can find documentation for this module with the perldoc command.
101
102         perldoc rgit
103
104     Tests code coverage report is available at
105     <http://www.profvince.com/perl/cover/rgit>.
106
107 COPYRIGHT & LICENSE
108     Copyright 2008 Vincent Pit, all rights reserved.
109
110     This program is free software; you can redistribute it and/or modify it
111     under the same terms as Perl itself.
112