File: git-bulk.1

package info (click to toggle)
git-extras 7.3.0-1
  • links: PTS
  • area: main
  • in suites: trixie
  • size: 1,988 kB
  • sloc: sh: 4,235; python: 634; makefile: 146
file content (116 lines) | stat: -rw-r--r-- 3,405 bytes parent folder | download
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
.\" generated with Ronn-NG/v0.9.1
.\" http://github.com/apjanke/ronn-ng/tree/0.9.1
.TH "GIT\-BULK" "1" "September 2024" "" "Git Extras"
.SH "NAME"
\fBgit\-bulk\fR \- Run git commands on multiple repositories
.SH "SYNOPSIS"
\fBgit\-bulk\fR [\-g] ([\-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
\-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:

$ 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"
<https://github\.com/nschlimm/git\-bulk>
.SH "SEE ALSO"
<\fIhttps://github\.com/tj/git\-extras\fR>