Provided by: git-extras_5.1.0-1_all
NAME
git-bulk - Run git commands on multiple repositories
SYNOPSIS
git bulk [-g] ([-a]|[-w git bulk --addworkspace git bulk --removeworkspace <ws-name> git bulk --addcurrent <ws-name> git bulk --purge git bulk --listall
DESCRIPTION
git bulk adds convenient support for operations that you want to execute on multiple git repositories. ○ simply register workspaces that contain multiple git repos in their directory structure ○ run any git command on the repositories of the registered workspaces in one command to git bulk ○ use the "guarded mode" to check on each execution
OPTIONS
-a Run a git command on all workspaces and their repositories. -g Ask the user for confirmation on every execution. -w <ws-name> Run the git command on the specified workspace. The workspace must be registered. <git command> Any git Command you wish to execute on the repositories. --addworkspace 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. With option ´--from´ the URL to a single repository or a file containing multiple URLs can be added and they will be cloned diretly into the workspace. Suitable for the initial setup of a multi-repo project. --removeworkspace <ws-name> Remove the workspace with the logical name <ws-name>. --addcurrent <ws-name> Adds the current directory as workspace to git bulk operations. The workspace is referenced with its logical name <ws-name>. git bulk --purge Removes all defined repository locations. git bulk --listall List all registered repositories.
EXAMPLES
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
AUTHOR
Written by Niklas Schlimm <mailto:ns103@hotmail.de>
REPORTING BUGS
<https://github.com/nschlimm/git-bulk>
SEE ALSO
<https://github.com/tj/git-extras> December 2019 GIT-BULK(1)