1GIT-BULK(1)                       Git Extras                       GIT-BULK(1)
2
3
4

NAME

6       git-bulk - Run git commands on multiple repositories
7

SYNOPSIS

9       git bulk [-g] ([-a]|[-w <ws-name>]) <git command>
10       git  bulk  --addworkspace <ws-name> <ws-root-directory> (--from <URL or
11       file>)
12       git bulk --removeworkspace <ws-name>
13       git bulk --addcurrent <ws-name>
14       git bulk --purge
15       git bulk --listall
16

DESCRIPTION

18       git bulk adds convenient support for operations that you want  to  exe‐
19       cute on multiple git repositories.
20
21       ·   simply register workspaces that contain multiple git repos in their
22           directory structure
23
24       ·   run  any  git  command  on  the  repositories  of  the   registered
25           workspaces in one command to git bulk
26
27       ·   use the "guarded mode" to check on each execution
28
29
30

OPTIONS

32       -a
33
34       Run a git command on all workspaces and their repositories.
35
36       -g
37
38       Ask the user for confirmation on every execution.
39
40       -w <ws-name>
41
42       Run  the  git command on the specified workspace. The workspace must be
43       registered.
44
45       <git command>
46
47       Any git Command you wish to execute on the repositories.
48
49       --addworkspace   <ws-name>   <ws-root-directory>   (--from   <URL    or
50       file&rt;gt;)
51
52       Register  a  workspace  for  bulk  operations.  All repositories in the
53       directories  below  <ws-root-directory>  get  registered   under   this
54       workspace with the name <ws-name>. <ws-root-directory> must be absolute
55       path.
56
57       With option ´--from´ the URL to a single repository or a file  contain‐
58       ing multiple URLs can be added and they will be cloned diretly into the
59       workspace. Suitable for the initial setup of a multi-repo project.
60
61       --removeworkspace <ws-name>
62
63       Remove the workspace with the logical name <ws-name>.
64
65       --addcurrent <ws-name>
66
67       Adds the current directory as workspace to  git  bulk  operations.  The
68       workspace is referenced with its logical name <ws-name>.
69
70       git bulk --purge
71
72       Removes all defined repository locations.
73
74       git bulk --listall
75
76       List all registered repositories.
77

EXAMPLES

79       Register a workspace so that git bulk knows about it:
80
81       $ git bulk --addworkspace personal ~/workspaces/personal
82
83       Use option --from in order to directly clone a repository or multiple repositories
84
85       $ git bulk --addworkspace personal ~/workspaces/personal --from https://github.com/tj/git-extras.git
86       $ git bulk --addworkspace personal ~/workspaces/personal --from ~/repositories.txt
87
88       repositories.txt
89       ----------------------------------
90       https://host-of-git/repo-1.git
91       https://host-of-git/repo-2.git
92       https://host-of-git/repo-3.git
93
94
95       Register the current directory as a workspace to git bulk:
96
97       $ git bulk --addcurrent personal
98
99       List all registered workspaces:
100
101       $ git bulk --listall
102
103       Run a git command on the repositories of the current workspace:
104
105       $ git bulk fetch
106
107       Run a git command on the specified workspace and its repositories:
108
109       $ git bulk -w personal fetch
110
111       Run a git command but ask the user for confirmation on every execution (guarded mode):
112
113       $ git bulk -g fetch
114
115       Remove a registered workspace:
116
117       $ git bulk --removeworkspace personal
118
119       Remove all registered workspaces:
120
121       $ git bulk --purge
122

AUTHOR

124       Written by Niklas Schlimm <ns103@hotmail.de>
125

REPORTING BUGS

127       <https://github.com/nschlimm/git-bulk>
128

SEE ALSO

130       <https://github.com/tj/git-extras>
131
132
133
134                                 December 2019                     GIT-BULK(1)
Impressum