mirror of
https://github.com/tj/git-extras.git
synced 2026-09-10 07:26:17 -04:00
130 lines
4 KiB
Groff
130 lines
4 KiB
Groff
.\" generated with Ronn-NG/v0.10.1
|
|
.\" http://github.com/apjanke/ronn-ng/tree/0.10.1
|
|
.TH "GIT\-BULK" "1" "March 2026" "" "Git Extras"
|
|
.SH "NAME"
|
|
\fBgit\-bulk\fR \- Run git commands on multiple repositories
|
|
.SH "SYNOPSIS"
|
|
.nf
|
|
git\-bulk [\-q|\-\-quiet] [\-g] [\-\-no\-follow\-symlinks] [\-\-no\-follow\-hidden] ([\-a]|[\-w WS\-NAME]) GIT\-COMMAND
|
|
git\-bulk \-\-addworkspace WS\-NAME WS\-ROOT\-DIRECTORY (\-\-from URL\-OR\-FILE)
|
|
git\-bulk \-\-removeworkspace WS\-NAME
|
|
git\-bulk \-\-addcurrent WS\-NAME
|
|
git\-bulk \-\-purge
|
|
git\-bulk \-\-listall
|
|
.fi
|
|
.SH "DESCRIPTION"
|
|
git bulk adds convenient support for operations that you want to execute on multiple git repositories\.
|
|
.IP "\(bu" 4
|
|
simply register workspaces that contain multiple git repos in their directory structure
|
|
.IP "\(bu" 4
|
|
run any git command on the repositories of the registered workspaces in one command to \fBgit bulk\fR
|
|
.IP "\(bu" 4
|
|
use the "guarded mode" to check on each execution
|
|
.IP "" 0
|
|
.SH "OPTIONS"
|
|
\-a
|
|
.P
|
|
Run a git command on all workspaces and their repositories\.
|
|
.P
|
|
\-g
|
|
.P
|
|
Ask the user for confirmation on every execution\.
|
|
.P
|
|
\-\-no\-follow\-symlinks
|
|
.P
|
|
Do not traverse symbolic links under the workspace when searching for git repositories\.
|
|
.P
|
|
\-\-no\-follow\-hidden
|
|
.P
|
|
Do not traverse hidden (dotted) directories under the workspace when searching for git repositories\.
|
|
.P
|
|
\-w WS\-NAME
|
|
.P
|
|
Run the git command on the specified workspace\. The workspace must be registered\.
|
|
.P
|
|
GIT\-COMMAND
|
|
.P
|
|
Any git Command you wish to execute on the repositories\.
|
|
.P
|
|
\-\-addworkspace WS\-NAME WS\-ROOT\-DIRECTORY (\-\-from URL\-OR\-FILE)
|
|
.P
|
|
Register a workspace for bulk operations\. All repositories in the directories below WS\-ROOT\-DIRECTORY get registered under this workspace with the name WS\-NAME\. WS\-ROOT\-DIRECTORY must be an absolute path\.
|
|
.P
|
|
With option '\-\-from' the URL to a single repository or a file containing multiple URLs can be added and they will be cloned directly into the workspace\. Suitable for the initial setup of a multi\-repo project\.
|
|
.P
|
|
\-\-removeworkspace WS\-NAME
|
|
.P
|
|
Remove the workspace with the logical name WS\-NAME\.
|
|
.P
|
|
\-\-addcurrent WS\-NAME
|
|
.P
|
|
Adds the current directory as workspace to git bulk operations\. The workspace is referenced with its logical name WS\-NAME\.
|
|
.P
|
|
git bulk \-\-purge
|
|
.P
|
|
Removes all defined repository locations\.
|
|
.P
|
|
git bulk \-\-listall
|
|
.P
|
|
List all registered repositories\.
|
|
.SH "EXAMPLES"
|
|
.nf
|
|
Register a workspace so that git bulk knows about it using an absolute path:
|
|
|
|
$ git bulk \-\-addworkspace personal ~/workspaces/personal
|
|
|
|
Or register a workspace using an environment variable pointing to an absolute path:
|
|
|
|
$ git bulk \-\-addworkspace personal '$PERSONAL_WORKSPACE'
|
|
|
|
Use option \-\-from in order to directly clone a repository or multiple repositories
|
|
|
|
$ git bulk \-\-addworkspace personal ~/workspaces/personal \-\-from https://github\.com/tj/git\-extras\.git
|
|
$ git bulk \-\-addworkspace personal ~/workspaces/personal \-\-from ~/repositories\.txt
|
|
|
|
repositories\.txt
|
|
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-
|
|
https://host\-of\-git/repo\-1\.git
|
|
https://host\-of\-git/repo\-2\.git
|
|
https://host\-of\-git/repo\-3\.git
|
|
|
|
|
|
Register the current directory as a workspace to git bulk:
|
|
|
|
$ git bulk \-\-addcurrent personal
|
|
|
|
List all registered workspaces:
|
|
|
|
$ git bulk \-\-listall
|
|
|
|
Run a git command on the repositories of the current workspace:
|
|
|
|
$ git bulk fetch
|
|
|
|
Run a git command on the specified workspace and its repositories:
|
|
|
|
$ git bulk \-w personal fetch
|
|
|
|
Run a git command but ask the user for confirmation on every execution (guarded mode):
|
|
|
|
$ git bulk \-g fetch
|
|
|
|
Remove a registered workspace:
|
|
|
|
$ git bulk \-\-removeworkspace personal
|
|
|
|
Remove all registered workspaces:
|
|
|
|
$ git bulk \-\-purge
|
|
.fi
|
|
.SH "FILES"
|
|
.IP "\(bu" 4
|
|
\fB\.gitconfig\fR: Store the \fBgit\-bulk\fR registered workspaces under the \fBbulkworkspaces\fR key\.
|
|
.IP "" 0
|
|
.SH "AUTHOR"
|
|
Written by Niklas Schlimm <\fIns103@hotmail\.de\fR>
|
|
.SH "REPORTING BUGS"
|
|
<https://github\.com/nschlimm/git\-bulk>
|
|
.SH "SEE ALSO"
|
|
<\fIhttps://github\.com/tj/git\-extras\fR>
|