From 1b593e1ea4d2af0f6444d9a7788d5d99abd6fde5 Mon Sep 17 00:00:00 2001 From: Vincent Ambo Date: Sat, 11 Jan 2020 23:36:56 +0000 Subject: Squashed 'third_party/git/' content from commit cb71568594 git-subtree-dir: third_party/git git-subtree-split: cb715685942260375e1eb8153b0768a376e4ece7 --- Documentation/git-send-email.txt | 524 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 524 insertions(+) create mode 100644 Documentation/git-send-email.txt (limited to 'Documentation/git-send-email.txt') diff --git a/Documentation/git-send-email.txt b/Documentation/git-send-email.txt new file mode 100644 index 000000000000..d93e5d0f58f0 --- /dev/null +++ b/Documentation/git-send-email.txt @@ -0,0 +1,524 @@ +git-send-email(1) +================= + +NAME +---- +git-send-email - Send a collection of patches as emails + + +SYNOPSIS +-------- +[verse] +'git send-email' [] ... +'git send-email' --dump-aliases + + +DESCRIPTION +----------- +Takes the patches given on the command line and emails them out. +Patches can be specified as files, directories (which will send all +files in the directory), or directly as a revision list. In the +last case, any format accepted by linkgit:git-format-patch[1] can +be passed to git send-email. + +The header of the email is configurable via command-line options. If not +specified on the command line, the user will be prompted with a ReadLine +enabled interface to provide the necessary information. + +There are two formats accepted for patch files: + +1. mbox format files ++ +This is what linkgit:git-format-patch[1] generates. Most headers and MIME +formatting are ignored. + +2. The original format used by Greg Kroah-Hartman's 'send_lots_of_email.pl' + script ++ +This format expects the first line of the file to contain the "Cc:" value +and the "Subject:" of the message as the second line. + + +OPTIONS +------- + +Composing +~~~~~~~~~ + +--annotate:: + Review and edit each patch you're about to send. Default is the value + of `sendemail.annotate`. See the CONFIGURATION section for + `sendemail.multiEdit`. + +--bcc=
,...:: + Specify a "Bcc:" value for each email. Default is the value of + `sendemail.bcc`. ++ +This option may be specified multiple times. + +--cc=
,...:: + Specify a starting "Cc:" value for each email. + Default is the value of `sendemail.cc`. ++ +This option may be specified multiple times. + +--compose:: + Invoke a text editor (see GIT_EDITOR in linkgit:git-var[1]) + to edit an introductory message for the patch series. ++ +When `--compose` is used, git send-email will use the From, Subject, and +In-Reply-To headers specified in the message. If the body of the message +(what you type after the headers and a blank line) only contains blank +(or Git: prefixed) lines, the summary won't be sent, but From, Subject, +and In-Reply-To headers will be used unless they are removed. ++ +Missing From or In-Reply-To headers will be prompted for. ++ +See the CONFIGURATION section for `sendemail.multiEdit`. + +--from=
:: + Specify the sender of the emails. If not specified on the command line, + the value of the `sendemail.from` configuration option is used. If + neither the command-line option nor `sendemail.from` are set, then the + user will be prompted for the value. The default for the prompt will be + the value of GIT_AUTHOR_IDENT, or GIT_COMMITTER_IDENT if that is not + set, as returned by "git var -l". + +--reply-to=
:: + Specify the address where replies from recipients should go to. + Use this if replies to messages should go to another address than what + is specified with the --from parameter. + +--in-reply-to=:: + Make the first mail (or all the mails with `--no-thread`) appear as a + reply to the given Message-Id, which avoids breaking threads to + provide a new patch series. + The second and subsequent emails will be sent as replies according to + the `--[no-]chain-reply-to` setting. ++ +So for example when `--thread` and `--no-chain-reply-to` are specified, the +second and subsequent patches will be replies to the first one like in the +illustration below where `[PATCH v2 0/3]` is in reply to `[PATCH 0/2]`: ++ + [PATCH 0/2] Here is what I did... + [PATCH 1/2] Clean up and tests + [PATCH 2/2] Implementation + [PATCH v2 0/3] Here is a reroll + [PATCH v2 1/3] Clean up + [PATCH v2 2/3] New tests + [PATCH v2 3/3] Implementation ++ +Only necessary if --compose is also set. If --compose +is not set, this will be prompted for. + +--subject=:: + Specify the initial subject of the email thread. + Only necessary if --compose is also set. If --compose + is not set, this will be prompted for. + +--to=
,...:: + Specify the primary recipient of the emails generated. Generally, this + will be the upstream maintainer of the project involved. Default is the + value of the `sendemail.to` configuration value; if that is unspecified, + and --to-cmd is not specified, this will be prompted for. ++ +This option may be specified multiple times. + +--8bit-encoding=:: + When encountering a non-ASCII message or subject that does not + declare its encoding, add headers/quoting to indicate it is + encoded in . Default is the value of the + 'sendemail.assume8bitEncoding'; if that is unspecified, this + will be prompted for if any non-ASCII files are encountered. ++ +Note that no attempts whatsoever are made to validate the encoding. + +--compose-encoding=:: + Specify encoding of compose message. Default is the value of the + 'sendemail.composeencoding'; if that is unspecified, UTF-8 is assumed. + +--transfer-encoding=(7bit|8bit|quoted-printable|base64|auto):: + Specify the transfer encoding to be used to send the message over SMTP. + 7bit will fail upon encountering a non-ASCII message. quoted-printable + can be useful when the repository contains files that contain carriage + returns, but makes the raw patch email file (as saved from a MUA) much + harder to inspect manually. base64 is even more fool proof, but also + even more opaque. auto will use 8bit when possible, and quoted-printable + otherwise. ++ +Default is the value of the `sendemail.transferEncoding` configuration +value; if that is unspecified, default to `auto`. + +--xmailer:: +--no-xmailer:: + Add (or prevent adding) the "X-Mailer:" header. By default, + the header is added, but it can be turned off by setting the + `sendemail.xmailer` configuration variable to `false`. + +Sending +~~~~~~~ + +--envelope-sender=
:: + Specify the envelope sender used to send the emails. + This is useful if your default address is not the address that is + subscribed to a list. In order to use the 'From' address, set the + value to "auto". If you use the sendmail binary, you must have + suitable privileges for the -f parameter. Default is the value of the + `sendemail.envelopeSender` configuration variable; if that is + unspecified, choosing the envelope sender is left to your MTA. + +--smtp-encryption=:: + Specify the encryption to use, either 'ssl' or 'tls'. Any other + value reverts to plain SMTP. Default is the value of + `sendemail.smtpEncryption`. + +--smtp-domain=:: + Specifies the Fully Qualified Domain Name (FQDN) used in the + HELO/EHLO command to the SMTP server. Some servers require the + FQDN to match your IP address. If not set, git send-email attempts + to determine your FQDN automatically. Default is the value of + `sendemail.smtpDomain`. + +--smtp-auth=:: + Whitespace-separated list of allowed SMTP-AUTH mechanisms. This setting + forces using only the listed mechanisms. Example: ++ +------ +$ git send-email --smtp-auth="PLAIN LOGIN GSSAPI" ... +------ ++ +If at least one of the specified mechanisms matches the ones advertised by the +SMTP server and if it is supported by the utilized SASL library, the mechanism +is used for authentication. If neither 'sendemail.smtpAuth' nor `--smtp-auth` +is specified, all mechanisms supported by the SASL library can be used. The +special value 'none' maybe specified to completely disable authentication +independently of `--smtp-user` + +--smtp-pass[=]:: + Password for SMTP-AUTH. The argument is optional: If no + argument is specified, then the empty string is used as + the password. Default is the value of `sendemail.smtpPass`, + however `--smtp-pass` always overrides this value. ++ +Furthermore, passwords need not be specified in configuration files +or on the command line. If a username has been specified (with +`--smtp-user` or a `sendemail.smtpUser`), but no password has been +specified (with `--smtp-pass` or `sendemail.smtpPass`), then +a password is obtained using 'git-credential'. + +--no-smtp-auth:: + Disable SMTP authentication. Short hand for `--smtp-auth=none` + +--smtp-server=:: + If set, specifies the outgoing SMTP server to use (e.g. + `smtp.example.com` or a raw IP address). Alternatively it can + specify a full pathname of a sendmail-like program instead; + the program must support the `-i` option. Default value can + be specified by the `sendemail.smtpServer` configuration + option; the built-in default is to search for `sendmail` in + `/usr/sbin`, `/usr/lib` and $PATH if such program is + available, falling back to `localhost` otherwise. + +--smtp-server-port=:: + Specifies a port different from the default port (SMTP + servers typically listen to smtp port 25, but may also listen to + submission port 587, or the common SSL smtp port 465); + symbolic port names (e.g. "submission" instead of 587) + are also accepted. The port can also be set with the + `sendemail.smtpServerPort` configuration variable. + +--smtp-server-option=