mailinfo: tests for RFC2047 examples
[git/git.git] / Documentation / git-send-email.txt
1 git-send-email(1)
2 =================
3
4 NAME
5 ----
6 git-send-email - Send a collection of patches as emails
7
8
9 SYNOPSIS
10 --------
11 'git send-email' [options] <file|directory> [... file|directory]
12
13
14
15 DESCRIPTION
16 -----------
17 Takes the patches given on the command line and emails them out.
18
19 The header of the email is configurable by command line options. If not
20 specified on the command line, the user will be prompted with a ReadLine
21 enabled interface to provide the necessary information.
22
23 OPTIONS
24 -------
25 The options available are:
26
27 --bcc::
28 Specify a "Bcc:" value for each email.
29 +
30 The --bcc option must be repeated for each user you want on the bcc list.
31
32 --cc::
33 Specify a starting "Cc:" value for each email.
34 +
35 The --cc option must be repeated for each user you want on the cc list.
36
37 --cc-cmd::
38 Specify a command to execute once per patch file which
39 should generate patch file specific "Cc:" entries.
40 Output of this command must be single email address per line.
41 Default is the value of 'sendemail.cccmd' configuration value.
42
43 --chain-reply-to::
44 --no-chain-reply-to::
45 If this is set, each email will be sent as a reply to the previous
46 email sent. If disabled with "--no-chain-reply-to", all emails after
47 the first will be sent as replies to the first email sent. When using
48 this, it is recommended that the first file given be an overview of the
49 entire patch series.
50 Default is the value of the 'sendemail.chainreplyto' configuration
51 value; if that is unspecified, default to --chain-reply-to.
52
53 --compose::
54 Use $GIT_EDITOR, core.editor, $VISUAL, or $EDITOR to edit an
55 introductory message for the patch series.
56
57 --from::
58 Specify the sender of the emails. This will default to
59 the value GIT_COMMITTER_IDENT, as returned by "git var -l".
60 The user will still be prompted to confirm this entry.
61
62 --in-reply-to::
63 Specify the contents of the first In-Reply-To header.
64 Subsequent emails will refer to the previous email
65 instead of this if --chain-reply-to is set (the default)
66 Only necessary if --compose is also set. If --compose
67 is not set, this will be prompted for.
68
69 --signed-off-by-cc::
70 --no-signed-off-by-cc::
71 If this is set, add emails found in Signed-off-by: or Cc: lines to the
72 cc list.
73 Default is the value of 'sendemail.signedoffcc' configuration value;
74 if that is unspecified, default to --signed-off-by-cc.
75
76 --quiet::
77 Make git-send-email less verbose. One line per email should be
78 all that is output.
79
80 --identity::
81 A configuration identity. When given, causes values in the
82 'sendemail.<identity>' subsection to take precedence over
83 values in the 'sendemail' section. The default identity is
84 the value of 'sendemail.identity'.
85
86 --smtp-server::
87 If set, specifies the outgoing SMTP server to use (e.g.
88 `smtp.example.com` or a raw IP address). Alternatively it can
89 specify a full pathname of a sendmail-like program instead;
90 the program must support the `-i` option. Default value can
91 be specified by the 'sendemail.smtpserver' configuration
92 option; the built-in default is `/usr/sbin/sendmail` or
93 `/usr/lib/sendmail` if such program is available, or
94 `localhost` otherwise.
95
96 --smtp-server-port::
97 Specifies a port different from the default port (SMTP
98 servers typically listen to smtp port 25 and ssmtp port
99 465).
100
101 --smtp-user::
102 Username for SMTP-AUTH. In place of this option, the following
103 configuration variables can be specified:
104 +
105 --
106 * sendemail.smtpuser
107 * sendemail.<identity>.smtpuser (see sendemail.identity).
108 --
109 +
110 However, --smtp-user always overrides these variables.
111 +
112 If a username is not specified (with --smtp-user or a
113 configuration variable), then authentication is not attempted.
114
115 --smtp-pass::
116 Password for SMTP-AUTH. The argument is optional: If no
117 argument is specified, then the empty string is used as
118 the password.
119 +
120 In place of this option, the following configuration variables
121 can be specified:
122 +
123 --
124 * sendemail.smtppass
125 * sendemail.<identity>.smtppass (see sendemail.identity).
126 --
127 +
128 However, --smtp-pass always overrides these variables.
129 +
130 Furthermore, passwords need not be specified in configuration files
131 or on the command line. If a username has been specified (with
132 --smtp-user or a configuration variable), but no password has been
133 specified (with --smtp-pass or a configuration variable), then the
134 user is prompted for a password while the input is masked for privacy.
135
136 --smtp-encryption::
137 Specify the encryption to use, either 'ssl' or 'tls'. Any other
138 value reverts to plain SMTP. Default is the value of
139 'sendemail.smtpencryption'.
140
141 --smtp-ssl::
142 Legacy alias for '--smtp-encryption=ssl'.
143
144 --subject::
145 Specify the initial subject of the email thread.
146 Only necessary if --compose is also set. If --compose
147 is not set, this will be prompted for.
148
149 --suppress-from::
150 --no-suppress-from::
151 If this is set, do not add the From: address to the cc: list.
152 Default is the value of 'sendemail.suppressfrom' configuration value;
153 if that is unspecified, default to --no-suppress-from.
154
155 --suppress-cc::
156 Specify an additional category of recipients to suppress the
157 auto-cc of. 'self' will avoid including the sender, 'author' will
158 avoid including the patch author, 'cc' will avoid including anyone
159 mentioned in Cc lines in the patch, 'sob' will avoid including
160 anyone mentioned in Signed-off-by lines, and 'cccmd' will avoid
161 running the --cc-cmd. 'all' will suppress all auto cc values.
162 Default is the value of 'sendemail.suppresscc' configuration value;
163 if that is unspecified, default to 'self' if --suppress-from is
164 specified, as well as 'sob' if --no-signed-off-cc is specified.
165
166 --thread::
167 --no-thread::
168 If this is set, the In-Reply-To header will be set on each email sent.
169 If disabled with "--no-thread", no emails will have the In-Reply-To
170 header set.
171 Default is the value of the 'sendemail.thread' configuration value;
172 if that is unspecified, default to --thread.
173
174 --dry-run::
175 Do everything except actually send the emails.
176
177 --envelope-sender::
178 Specify the envelope sender used to send the emails.
179 This is useful if your default address is not the address that is
180 subscribed to a list. If you use the sendmail binary, you must have
181 suitable privileges for the -f parameter.
182 Default is the value of the 'sendemail.envelopesender' configuration
183 variable; if that is unspecified, choosing the envelope sender is left
184 to your MTA.
185
186 --to::
187 Specify the primary recipient of the emails generated.
188 Generally, this will be the upstream maintainer of the
189 project involved.
190 Default is the value of the 'sendemail.to' configuration value;
191 if that is unspecified, this will be prompted for.
192 +
193 The --to option must be repeated for each user you want on the to list.
194
195
196 CONFIGURATION
197 -------------
198 sendemail.identity::
199 The default configuration identity. When specified,
200 'sendemail.<identity>.<item>' will have higher precedence than
201 'sendemail.<item>'. This is useful to declare multiple SMTP
202 identities and to hoist sensitive authentication information
203 out of the repository and into the global configuration file.
204
205 sendemail.aliasesfile::
206 To avoid typing long email addresses, point this to one or more
207 email aliases files. You must also supply 'sendemail.aliasfiletype'.
208
209 sendemail.aliasfiletype::
210 Format of the file(s) specified in sendemail.aliasesfile. Must be
211 one of 'mutt', 'mailrc', 'pine', or 'gnus'.
212
213 sendemail.to::
214 Email address (or alias) to always send to.
215
216 sendemail.cccmd::
217 Command to execute to generate per patch file specific "Cc:"s.
218
219 sendemail.bcc::
220 Email address (or alias) to always bcc.
221
222 sendemail.chainreplyto::
223 Boolean value specifying the default to the '--chain_reply_to'
224 parameter.
225
226 sendemail.smtpserver::
227 Default SMTP server to use.
228
229 sendemail.smtpserverport::
230 Default SMTP server port to use.
231
232 sendemail.smtpuser::
233 Default SMTP-AUTH username.
234
235 sendemail.smtppass::
236 Default SMTP-AUTH password.
237
238 sendemail.smtpencryption::
239 Default encryption method. Use 'ssl' for SSL (and specify an
240 appropriate port), or 'tls' for TLS. Takes precedence over
241 'smtpssl' if both are specified.
242
243 sendemail.smtpssl::
244 Legacy boolean that sets 'smtpencryption=ssl' if enabled.
245
246 Author
247 ------
248 Written by Ryan Anderson <ryan@michonline.com>
249
250 git-send-email is originally based upon
251 send_lots_of_email.pl by Greg Kroah-Hartman.
252
253 Documentation
254 --------------
255 Documentation by Ryan Anderson
256
257 GIT
258 ---
259 Part of the linkgit:git[1] suite