1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132
|
.\" generated with Ronn-NG/v0.9.1
.\" http://github.com/apjanke/ronn-ng/tree/0.9.1
.TH "GIT\-BULK" "1" "February 2025" "" "Git Extras"
.SH "NAME"
\fBgit\-bulk\fR \- Run git commands on multiple repositories
.SH "SYNOPSIS"
\fBgit\-bulk\fR [\-g] [\-\-no\-follow\-symlinks] [\-\-no\-follow\-hidden] ([\-a]|[\-w
.br
\fBgit\-bulk\fR \-\-addworkspace
.br
\fBgit\-bulk\fR \-\-removeworkspace <ws\-name>
.br
\fBgit\-bulk\fR \-\-addcurrent <ws\-name>
.br
\fBgit\-bulk\fR \-\-purge
.br
\fBgit\-bulk\fR \-\-listall
.SH "DESCRIPTION"
git bulk adds convenient support for operations that you want to execute on multiple git repositories\.
.IP "\[ci]" 4
simply register workspaces that contain multiple git repos in their directory structure
.IP "\[ci]" 4
run any git command on the repositories of the registered workspaces in one command to \fBgit bulk\fR
.IP "\[ci]" 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
.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 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 "\[ci]" 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>
|