.\" generated with Ronn-NG/v0.9.1 .\" http://github.com/apjanke/ronn-ng/tree/0.9.1 .TH "GIT\-BULK" "1" "November 2023" "" "Git Extras" .SH "NAME" \fBgit\-bulk\fR \- Run git commands on multiple repositories .SH "SYNOPSIS" git bulk [\-g] ([\-a]|[\-w .br git bulk \-\-addworkspace .br git bulk \-\-removeworkspace .br git bulk \-\-addcurrent .br git bulk \-\-purge .br git bulk \-\-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 \-w .P Run the git command on the specified workspace\. The workspace must be registered\. .P .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 get registered under this workspace with the name \. 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 .P Remove the workspace with the logical name \. .P \-\-addcurrent .P Adds the current directory as workspace to git bulk operations\. The workspace is referenced with its logical 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: $ git bulk \-\-addworkspace personal ~/workspaces/personal 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 "AUTHOR" Written by Niklas Schlimm <\fIns103@hotmail\.de\fR> .SH "REPORTING BUGS" .SH "SEE ALSO" <\fIhttps://github\.com/tj/git\-extras\fR>