Documentation / git-send-email.txton commit Docs: send-email: Create logical groupings for --help text (4ed62b0)
   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. Default is the value of
  28        'sendemail.bcc'.
  29+
  30The --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+
  35The --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--[no-]chain-reply-to::
  44        If this is set, each email will be sent as a reply to the previous
  45        email sent.  If disabled with "--no-chain-reply-to", all emails after
  46        the first will be sent as replies to the first email sent.  When using
  47        this, it is recommended that the first file given be an overview of the
  48        entire patch series. Default is the value of the 'sendemail.chainreplyto'
  49        configuration value; if that is unspecified, default to --chain-reply-to.
  50
  51--compose::
  52        Use $GIT_EDITOR, core.editor, $VISUAL, or $EDITOR to edit an
  53        introductory message for the patch series.
  54
  55--dry-run::
  56        Do everything except actually send the emails.
  57
  58--envelope-sender::
  59        Specify the envelope sender used to send the emails.
  60        This is useful if your default address is not the address that is
  61        subscribed to a list. If you use the sendmail binary, you must have
  62        suitable privileges for the -f parameter. Default is the value of
  63        the 'sendemail.envelopesender' configuration variable; if that is
  64        unspecified, choosing the envelope sender is left to your MTA.
  65
  66--from::
  67        Specify the sender of the emails.  This will default to
  68        the value GIT_COMMITTER_IDENT, as returned by "git var -l".
  69        The user will still be prompted to confirm this entry.
  70
  71--identity::
  72        A configuration identity. When given, causes values in the
  73        'sendemail.<identity>' subsection to take precedence over
  74        values in the 'sendemail' section. The default identity is
  75        the value of 'sendemail.identity'.
  76
  77--in-reply-to::
  78        Specify the contents of the first In-Reply-To header.
  79        Subsequent emails will refer to the previous email
  80        instead of this if --chain-reply-to is set (the default)
  81        Only necessary if --compose is also set.  If --compose
  82        is not set, this will be prompted for.
  83
  84--quiet::
  85        Make git-send-email less verbose.  One line per email should be
  86        all that is output.
  87
  88--[no-]signed-off-by-cc::
  89        If this is set, add emails found in Signed-off-by: or Cc: lines to the
  90        cc list. Default is the value of 'sendemail.signedoffcc' configuration
  91        value; if that is unspecified, default to --signed-off-by-cc.
  92
  93--smtp-encryption::
  94        Specify the encryption to use, either 'ssl' or 'tls'.  Any other
  95        value reverts to plain SMTP.  Default is the value of
  96        'sendemail.smtpencryption'.
  97
  98--smtp-pass::
  99        Password for SMTP-AUTH. The argument is optional: If no
 100        argument is specified, then the empty string is used as
 101        the password. Default is the value of 'sendemail.smtppass',
 102        however '--smtp-pass' always overrides this value.
 103+
 104Furthermore, passwords need not be specified in configuration files
 105or on the command line. If a username has been specified (with
 106'--smtp-user' or a 'sendemail.smtpuser'), but no password has been
 107specified (with '--smtp-pass' or 'sendemail.smtppass'), then the
 108user is prompted for a password while the input is masked for privacy.
 109
 110--smtp-server::
 111        If set, specifies the outgoing SMTP server to use (e.g.
 112        `smtp.example.com` or a raw IP address).  Alternatively it can
 113        specify a full pathname of a sendmail-like program instead;
 114        the program must support the `-i` option.  Default value can
 115        be specified by the 'sendemail.smtpserver' configuration
 116        option; the built-in default is `/usr/sbin/sendmail` or
 117        `/usr/lib/sendmail` if such program is available, or
 118        `localhost` otherwise.
 119
 120--smtp-server-port::
 121        Specifies a port different from the default port (SMTP
 122        servers typically listen to smtp port 25 and ssmtp port
 123        465). This can be set with 'sendemail.smtpserverport'.
 124
 125--smtp-ssl::
 126        Legacy alias for '--smtp-encryption ssl'.
 127
 128--smtp-user::
 129        Username for SMTP-AUTH. Default is the value of 'sendemail.smtpuser';
 130        if a username is not specified (with '--smtp-user' or 'sendemail.smtpuser'),
 131        then authentication is not attempted.
 132
 133--subject::
 134        Specify the initial subject of the email thread.
 135        Only necessary if --compose is also set.  If --compose
 136        is not set, this will be prompted for.
 137
 138--suppress-cc::
 139        Specify an additional category of recipients to suppress the
 140        auto-cc of.  'self' will avoid including the sender, 'author' will
 141        avoid including the patch author, 'cc' will avoid including anyone
 142        mentioned in Cc lines in the patch, 'sob' will avoid including
 143        anyone mentioned in Signed-off-by lines, and 'cccmd' will avoid
 144        running the --cc-cmd.  'all' will suppress all auto cc values.
 145        Default is the value of 'sendemail.suppresscc' configuration value;
 146        if that is unspecified, default to 'self' if --suppress-from is
 147        specified, as well as 'sob' if --no-signed-off-cc is specified.
 148
 149--[no-]suppress-from::
 150        If this is set, do not add the From: address to the cc: list.
 151        Default is the value of 'sendemail.suppressfrom' configuration
 152        value; if that is unspecified, default to --no-suppress-from.
 153
 154--[no-]thread::
 155        If this is set, the In-Reply-To header will be set on each email sent.
 156        If disabled with "--no-thread", no emails will have the In-Reply-To
 157        header set. Default is the value of the 'sendemail.thread' configuration
 158        value; if that is unspecified, default to --thread.
 159
 160--to::
 161        Specify the primary recipient of the emails generated. Generally, this
 162        will be the upstream maintainer of the project involved. Default is the
 163        value of the 'sendemail.to' configuration value; if that is unspecified,
 164        this will be prompted for.
 165+
 166The --to option must be repeated for each user you want on the to list.
 167
 168--[no-]validate::
 169        Perform sanity checks on patches.
 170        Currently, validation means the following:
 171+
 172--
 173                *       Warn of patches that contain lines longer than 998 characters; this
 174                        is due to SMTP limits as described by http://www.ietf.org/rfc/rfc2821.txt.
 175--
 176+
 177Default is the value of 'sendemail.validate'; if this is not set,
 178default to '--validate'.
 179
 180
 181CONFIGURATION
 182-------------
 183sendemail.aliasesfile::
 184        To avoid typing long email addresses, point this to one or more
 185        email aliases files.  You must also supply 'sendemail.aliasfiletype'.
 186
 187sendemail.aliasfiletype::
 188        Format of the file(s) specified in sendemail.aliasesfile. Must be
 189        one of 'mutt', 'mailrc', 'pine', or 'gnus'.
 190
 191Author
 192------
 193Written by Ryan Anderson <ryan@michonline.com>
 194
 195git-send-email is originally based upon
 196send_lots_of_email.pl by Greg Kroah-Hartman.
 197
 198Documentation
 199--------------
 200Documentation by Ryan Anderson
 201
 202GIT
 203---
 204Part of the linkgit:git[1] suite