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