1GIT-BULK(1) Git Extras GIT-BULK(1)
2
3
4
6 git-bulk - Run git commands on multiple repositories
7
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
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
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
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
124 Written by Niklas Schlimm <ns103@hotmail.de>
125
127 <https://github.com/nschlimm/git-bulk>
128
130 <https://github.com/tj/git-extras>
131
132
133
134 December 2019 GIT-BULK(1)