Autogenerated HTML docs for v1.7.7-325-g05f6ed
[git/jnareb-git.git] / git-send-email.html
blobe25e5e3c31886eb50a2c1b072ffda755dc46b110
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
2 "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
4 <head>
5 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
6 <meta name="generator" content="AsciiDoc 8.5.2" />
7 <title>git-send-email(1)</title>
8 <style type="text/css">
9 /* Debug borders */
10 p, li, dt, dd, div, pre, h1, h2, h3, h4, h5, h6 {
12 border: 1px solid red;
16 body {
17 margin: 1em 5% 1em 5%;
20 a {
21 color: blue;
22 text-decoration: underline;
24 a:visited {
25 color: fuchsia;
28 em {
29 font-style: italic;
30 color: navy;
33 strong {
34 font-weight: bold;
35 color: #083194;
38 tt {
39 color: navy;
42 h1, h2, h3, h4, h5, h6 {
43 color: #527bbd;
44 font-family: sans-serif;
45 margin-top: 1.2em;
46 margin-bottom: 0.5em;
47 line-height: 1.3;
50 h1, h2, h3 {
51 border-bottom: 2px solid silver;
53 h2 {
54 padding-top: 0.5em;
56 h3 {
57 float: left;
59 h3 + * {
60 clear: left;
63 div.sectionbody {
64 font-family: serif;
65 margin-left: 0;
68 hr {
69 border: 1px solid silver;
72 p {
73 margin-top: 0.5em;
74 margin-bottom: 0.5em;
77 ul, ol, li > p {
78 margin-top: 0;
81 pre {
82 padding: 0;
83 margin: 0;
86 span#author {
87 color: #527bbd;
88 font-family: sans-serif;
89 font-weight: bold;
90 font-size: 1.1em;
92 span#email {
94 span#revnumber, span#revdate, span#revremark {
95 font-family: sans-serif;
98 div#footer {
99 font-family: sans-serif;
100 font-size: small;
101 border-top: 2px solid silver;
102 padding-top: 0.5em;
103 margin-top: 4.0em;
105 div#footer-text {
106 float: left;
107 padding-bottom: 0.5em;
109 div#footer-badges {
110 float: right;
111 padding-bottom: 0.5em;
114 div#preamble {
115 margin-top: 1.5em;
116 margin-bottom: 1.5em;
118 div.tableblock, div.imageblock, div.exampleblock, div.verseblock,
119 div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock,
120 div.admonitionblock {
121 margin-top: 1.0em;
122 margin-bottom: 1.5em;
124 div.admonitionblock {
125 margin-top: 2.0em;
126 margin-bottom: 2.0em;
127 margin-right: 10%;
128 color: #606060;
131 div.content { /* Block element content. */
132 padding: 0;
135 /* Block element titles. */
136 div.title, caption.title {
137 color: #527bbd;
138 font-family: sans-serif;
139 font-weight: bold;
140 text-align: left;
141 margin-top: 1.0em;
142 margin-bottom: 0.5em;
144 div.title + * {
145 margin-top: 0;
148 td div.title:first-child {
149 margin-top: 0.0em;
151 div.content div.title:first-child {
152 margin-top: 0.0em;
154 div.content + div.title {
155 margin-top: 0.0em;
158 div.sidebarblock > div.content {
159 background: #ffffee;
160 border: 1px solid silver;
161 padding: 0.5em;
164 div.listingblock > div.content {
165 border: 1px solid silver;
166 background: #f4f4f4;
167 padding: 0.5em;
170 div.quoteblock, div.verseblock {
171 padding-left: 1.0em;
172 margin-left: 1.0em;
173 margin-right: 10%;
174 border-left: 5px solid #dddddd;
175 color: #777777;
178 div.quoteblock > div.attribution {
179 padding-top: 0.5em;
180 text-align: right;
183 div.verseblock > div.content {
184 white-space: pre;
186 div.verseblock > div.attribution {
187 padding-top: 0.75em;
188 text-align: left;
190 /* DEPRECATED: Pre version 8.2.7 verse style literal block. */
191 div.verseblock + div.attribution {
192 text-align: left;
195 div.admonitionblock .icon {
196 vertical-align: top;
197 font-size: 1.1em;
198 font-weight: bold;
199 text-decoration: underline;
200 color: #527bbd;
201 padding-right: 0.5em;
203 div.admonitionblock td.content {
204 padding-left: 0.5em;
205 border-left: 3px solid #dddddd;
208 div.exampleblock > div.content {
209 border-left: 3px solid #dddddd;
210 padding-left: 0.5em;
213 div.imageblock div.content { padding-left: 0; }
214 span.image img { border-style: none; }
215 a.image:visited { color: white; }
217 dl {
218 margin-top: 0.8em;
219 margin-bottom: 0.8em;
221 dt {
222 margin-top: 0.5em;
223 margin-bottom: 0;
224 font-style: normal;
225 color: navy;
227 dd > *:first-child {
228 margin-top: 0.1em;
231 ul, ol {
232 list-style-position: outside;
234 ol.arabic {
235 list-style-type: decimal;
237 ol.loweralpha {
238 list-style-type: lower-alpha;
240 ol.upperalpha {
241 list-style-type: upper-alpha;
243 ol.lowerroman {
244 list-style-type: lower-roman;
246 ol.upperroman {
247 list-style-type: upper-roman;
250 div.compact ul, div.compact ol,
251 div.compact p, div.compact p,
252 div.compact div, div.compact div {
253 margin-top: 0.1em;
254 margin-bottom: 0.1em;
257 div.tableblock > table {
258 border: 3px solid #527bbd;
260 thead, p.table.header {
261 font-family: sans-serif;
262 font-weight: bold;
264 tfoot {
265 font-weight: bold;
267 td > div.verse {
268 white-space: pre;
270 p.table {
271 margin-top: 0;
273 /* Because the table frame attribute is overriden by CSS in most browsers. */
274 div.tableblock > table[frame="void"] {
275 border-style: none;
277 div.tableblock > table[frame="hsides"] {
278 border-left-style: none;
279 border-right-style: none;
281 div.tableblock > table[frame="vsides"] {
282 border-top-style: none;
283 border-bottom-style: none;
287 div.hdlist {
288 margin-top: 0.8em;
289 margin-bottom: 0.8em;
291 div.hdlist tr {
292 padding-bottom: 15px;
294 dt.hdlist1.strong, td.hdlist1.strong {
295 font-weight: bold;
297 td.hdlist1 {
298 vertical-align: top;
299 font-style: normal;
300 padding-right: 0.8em;
301 color: navy;
303 td.hdlist2 {
304 vertical-align: top;
306 div.hdlist.compact tr {
307 margin: 0;
308 padding-bottom: 0;
311 .comment {
312 background: yellow;
315 .footnote, .footnoteref {
316 font-size: 0.8em;
319 span.footnote, span.footnoteref {
320 vertical-align: super;
323 #footnotes {
324 margin: 20px 0 20px 0;
325 padding: 7px 0 0 0;
328 #footnotes div.footnote {
329 margin: 0 0 5px 0;
332 #footnotes hr {
333 border: none;
334 border-top: 1px solid silver;
335 height: 1px;
336 text-align: left;
337 margin-left: 0;
338 width: 20%;
339 min-width: 100px;
343 @media print {
344 div#footer-badges { display: none; }
347 div#toc {
348 margin-bottom: 2.5em;
351 div#toctitle {
352 color: #527bbd;
353 font-family: sans-serif;
354 font-size: 1.1em;
355 font-weight: bold;
356 margin-top: 1.0em;
357 margin-bottom: 0.1em;
360 div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {
361 margin-top: 0;
362 margin-bottom: 0;
364 div.toclevel2 {
365 margin-left: 2em;
366 font-size: 0.9em;
368 div.toclevel3 {
369 margin-left: 4em;
370 font-size: 0.9em;
372 div.toclevel4 {
373 margin-left: 6em;
374 font-size: 0.9em;
376 /* Overrides for manpage documents */
377 h1 {
378 padding-top: 0.5em;
379 padding-bottom: 0.5em;
380 border-top: 2px solid silver;
381 border-bottom: 2px solid silver;
383 h2 {
384 border-style: none;
386 div.sectionbody {
387 margin-left: 5%;
390 @media print {
391 div#toc { display: none; }
394 /* Workarounds for IE6's broken and incomplete CSS2. */
396 div.sidebar-content {
397 background: #ffffee;
398 border: 1px solid silver;
399 padding: 0.5em;
401 div.sidebar-title, div.image-title {
402 color: #527bbd;
403 font-family: sans-serif;
404 font-weight: bold;
405 margin-top: 0.0em;
406 margin-bottom: 0.5em;
409 div.listingblock div.content {
410 border: 1px solid silver;
411 background: #f4f4f4;
412 padding: 0.5em;
415 div.quoteblock-attribution {
416 padding-top: 0.5em;
417 text-align: right;
420 div.verseblock-content {
421 white-space: pre;
423 div.verseblock-attribution {
424 padding-top: 0.75em;
425 text-align: left;
428 div.exampleblock-content {
429 border-left: 3px solid #dddddd;
430 padding-left: 0.5em;
433 /* IE6 sets dynamically generated links as visited. */
434 div#toc a:visited { color: blue; }
435 </style>
436 <script type="text/javascript">
437 /*<![CDATA[*/
438 window.onload = function(){asciidoc.footnotes();}
439 var asciidoc = { // Namespace.
441 /////////////////////////////////////////////////////////////////////
442 // Table Of Contents generator
443 /////////////////////////////////////////////////////////////////////
445 /* Author: Mihai Bazon, September 2002
446 * http://students.infoiasi.ro/~mishoo
448 * Table Of Content generator
449 * Version: 0.4
451 * Feel free to use this script under the terms of the GNU General Public
452 * License, as long as you do not remove or alter this notice.
455 /* modified by Troy D. Hanson, September 2006. License: GPL */
456 /* modified by Stuart Rackham, 2006, 2009. License: GPL */
458 // toclevels = 1..4.
459 toc: function (toclevels) {
461 function getText(el) {
462 var text = "";
463 for (var i = el.firstChild; i != null; i = i.nextSibling) {
464 if (i.nodeType == 3 /* Node.TEXT_NODE */) // IE doesn't speak constants.
465 text += i.data;
466 else if (i.firstChild != null)
467 text += getText(i);
469 return text;
472 function TocEntry(el, text, toclevel) {
473 this.element = el;
474 this.text = text;
475 this.toclevel = toclevel;
478 function tocEntries(el, toclevels) {
479 var result = new Array;
480 var re = new RegExp('[hH]([2-'+(toclevels+1)+'])');
481 // Function that scans the DOM tree for header elements (the DOM2
482 // nodeIterator API would be a better technique but not supported by all
483 // browsers).
484 var iterate = function (el) {
485 for (var i = el.firstChild; i != null; i = i.nextSibling) {
486 if (i.nodeType == 1 /* Node.ELEMENT_NODE */) {
487 var mo = re.exec(i.tagName);
488 if (mo && (i.getAttribute("class") || i.getAttribute("className")) != "float") {
489 result[result.length] = new TocEntry(i, getText(i), mo[1]-1);
491 iterate(i);
495 iterate(el);
496 return result;
499 var toc = document.getElementById("toc");
500 var entries = tocEntries(document.getElementById("content"), toclevels);
501 for (var i = 0; i < entries.length; ++i) {
502 var entry = entries[i];
503 if (entry.element.id == "")
504 entry.element.id = "_toc_" + i;
505 var a = document.createElement("a");
506 a.href = "#" + entry.element.id;
507 a.appendChild(document.createTextNode(entry.text));
508 var div = document.createElement("div");
509 div.appendChild(a);
510 div.className = "toclevel" + entry.toclevel;
511 toc.appendChild(div);
513 if (entries.length == 0)
514 toc.parentNode.removeChild(toc);
518 /////////////////////////////////////////////////////////////////////
519 // Footnotes generator
520 /////////////////////////////////////////////////////////////////////
522 /* Based on footnote generation code from:
523 * http://www.brandspankingnew.net/archive/2005/07/format_footnote.html
526 footnotes: function () {
527 var cont = document.getElementById("content");
528 var noteholder = document.getElementById("footnotes");
529 var spans = cont.getElementsByTagName("span");
530 var refs = {};
531 var n = 0;
532 for (i=0; i<spans.length; i++) {
533 if (spans[i].className == "footnote") {
534 n++;
535 // Use [\s\S] in place of . so multi-line matches work.
536 // Because JavaScript has no s (dotall) regex flag.
537 note = spans[i].innerHTML.match(/\s*\[([\s\S]*)]\s*/)[1];
538 noteholder.innerHTML +=
539 "<div class='footnote' id='_footnote_" + n + "'>" +
540 "<a href='#_footnoteref_" + n + "' title='Return to text'>" +
541 n + "</a>. " + note + "</div>";
542 spans[i].innerHTML =
543 "[<a id='_footnoteref_" + n + "' href='#_footnote_" + n +
544 "' title='View footnote' class='footnote'>" + n + "</a>]";
545 var id =spans[i].getAttribute("id");
546 if (id != null) refs["#"+id] = n;
549 if (n == 0)
550 noteholder.parentNode.removeChild(noteholder);
551 else {
552 // Process footnoterefs.
553 for (i=0; i<spans.length; i++) {
554 if (spans[i].className == "footnoteref") {
555 var href = spans[i].getElementsByTagName("a")[0].getAttribute("href");
556 href = href.match(/#.*/)[0]; // Because IE return full URL.
557 n = refs[href];
558 spans[i].innerHTML =
559 "[<a href='#_footnote_" + n +
560 "' title='View footnote' class='footnote'>" + n + "</a>]";
567 /*]]>*/
568 </script>
569 </head>
570 <body>
571 <div id="header">
572 <h1>
573 git-send-email(1) Manual Page
574 </h1>
575 <h2>NAME</h2>
576 <div class="sectionbody">
577 <p>git-send-email -
578 Send a collection of patches as emails
579 </p>
580 </div>
581 </div>
582 <div id="content">
583 <h2 id="_synopsis">SYNOPSIS</h2>
584 <div class="sectionbody">
585 <div class="verseblock">
586 <div class="verseblock-content"><em>git send-email</em> [options] &lt;file|directory|rev-list options&gt;&#8230;</div>
587 <div class="verseblock-attribution">
588 </div></div>
589 </div>
590 <h2 id="_description">DESCRIPTION</h2>
591 <div class="sectionbody">
592 <div class="paragraph"><p>Takes the patches given on the command line and emails them out.
593 Patches can be specified as files, directories (which will send all
594 files in the directory), or directly as a revision list. In the
595 last case, any format accepted by <a href="git-format-patch.html">git-format-patch(1)</a> can
596 be passed to git send-email.</p></div>
597 <div class="paragraph"><p>The header of the email is configurable by command line options. If not
598 specified on the command line, the user will be prompted with a ReadLine
599 enabled interface to provide the necessary information.</p></div>
600 <div class="paragraph"><p>There are two formats accepted for patch files:</p></div>
601 <div class="olist arabic"><ol class="arabic">
602 <li>
604 mbox format files
605 </p>
606 <div class="paragraph"><p>This is what <a href="git-format-patch.html">git-format-patch(1)</a> generates. Most headers and MIME
607 formatting are ignored.</p></div>
608 </li>
609 <li>
611 The original format used by Greg Kroah-Hartman&#8217;s <em>send_lots_of_email.pl</em>
612 script
613 </p>
614 <div class="paragraph"><p>This format expects the first line of the file to contain the "Cc:" value
615 and the "Subject:" of the message as the second line.</p></div>
616 </li>
617 </ol></div>
618 </div>
619 <h2 id="_options">OPTIONS</h2>
620 <div class="sectionbody">
621 <h3 id="_composing">Composing</h3><div style="clear:left"></div>
622 <div class="dlist"><dl>
623 <dt class="hdlist1">
624 --annotate
625 </dt>
626 <dd>
628 Review and edit each patch you&#8217;re about to send. See the
629 CONFIGURATION section for <em>sendemail.multiedit</em>.
630 </p>
631 </dd>
632 <dt class="hdlist1">
633 --bcc=&lt;address&gt;
634 </dt>
635 <dd>
637 Specify a "Bcc:" value for each email. Default is the value of
638 <em>sendemail.bcc</em>.
639 </p>
640 <div class="paragraph"><p>The --bcc option must be repeated for each user you want on the bcc list.</p></div>
641 </dd>
642 <dt class="hdlist1">
643 --cc=&lt;address&gt;
644 </dt>
645 <dd>
647 Specify a starting "Cc:" value for each email.
648 Default is the value of <em>sendemail.cc</em>.
649 </p>
650 <div class="paragraph"><p>The --cc option must be repeated for each user you want on the cc list.</p></div>
651 </dd>
652 <dt class="hdlist1">
653 --compose
654 </dt>
655 <dd>
657 Invoke a text editor (see GIT_EDITOR in <a href="git-var.html">git-var(1)</a>)
658 to edit an introductory message for the patch series.
659 </p>
660 <div class="paragraph"><p>When <em>--compose</em> is used, git send-email will use the From, Subject, and
661 In-Reply-To headers specified in the message. If the body of the message
662 (what you type after the headers and a blank line) only contains blank
663 (or GIT: prefixed) lines the summary won&#8217;t be sent, but From, Subject,
664 and In-Reply-To headers will be used unless they are removed.</p></div>
665 <div class="paragraph"><p>Missing From or In-Reply-To headers will be prompted for.</p></div>
666 <div class="paragraph"><p>See the CONFIGURATION section for <em>sendemail.multiedit</em>.</p></div>
667 </dd>
668 <dt class="hdlist1">
669 --from=&lt;address&gt;
670 </dt>
671 <dd>
673 Specify the sender of the emails. If not specified on the command line,
674 the value of the <em>sendemail.from</em> configuration option is used. If
675 neither the command line option nor <em>sendemail.from</em> are set, then the
676 user will be prompted for the value. The default for the prompt will be
677 the value of GIT_AUTHOR_IDENT, or GIT_COMMITTER_IDENT if that is not
678 set, as returned by "git var -l".
679 </p>
680 </dd>
681 <dt class="hdlist1">
682 --in-reply-to=&lt;identifier&gt;
683 </dt>
684 <dd>
686 Make the first mail (or all the mails with <tt>--no-thread</tt>) appear as a
687 reply to the given Message-Id, which avoids breaking threads to
688 provide a new patch series.
689 The second and subsequent emails will be sent as replies according to
690 the <tt>--[no]-chain-reply-to</tt> setting.
691 </p>
692 <div class="paragraph"><p>So for example when <tt>--thread</tt> and <tt>--no-chain-reply-to</tt> are specified, the
693 second and subsequent patches will be replies to the first one like in the
694 illustration below where <tt>[PATCH v2 0/3]</tt> is in reply to <tt>[PATCH 0/2]</tt>:</p></div>
695 <div class="literalblock">
696 <div class="content">
697 <pre><tt>[PATCH 0/2] Here is what I did...
698 [PATCH 1/2] Clean up and tests
699 [PATCH 2/2] Implementation
700 [PATCH v2 0/3] Here is a reroll
701 [PATCH v2 1/3] Clean up
702 [PATCH v2 2/3] New tests
703 [PATCH v2 3/3] Implementation</tt></pre>
704 </div></div>
705 <div class="paragraph"><p>Only necessary if --compose is also set. If --compose
706 is not set, this will be prompted for.</p></div>
707 </dd>
708 <dt class="hdlist1">
709 --subject=&lt;string&gt;
710 </dt>
711 <dd>
713 Specify the initial subject of the email thread.
714 Only necessary if --compose is also set. If --compose
715 is not set, this will be prompted for.
716 </p>
717 </dd>
718 <dt class="hdlist1">
719 --to=&lt;address&gt;
720 </dt>
721 <dd>
723 Specify the primary recipient of the emails generated. Generally, this
724 will be the upstream maintainer of the project involved. Default is the
725 value of the <em>sendemail.to</em> configuration value; if that is unspecified,
726 and --to-cmd is not specified, this will be prompted for.
727 </p>
728 <div class="paragraph"><p>The --to option must be repeated for each user you want on the to list.</p></div>
729 </dd>
730 <dt class="hdlist1">
731 --8bit-encoding=&lt;encoding&gt;
732 </dt>
733 <dd>
735 When encountering a non-ASCII message or subject that does not
736 declare its encoding, add headers/quoting to indicate it is
737 encoded in &lt;encoding&gt;. Default is the value of the
738 <em>sendemail.assume8bitEncoding</em>; if that is unspecified, this
739 will be prompted for if any non-ASCII files are encountered.
740 </p>
741 <div class="paragraph"><p>Note that no attempts whatsoever are made to validate the encoding.</p></div>
742 </dd>
743 </dl></div>
744 <h3 id="_sending">Sending</h3><div style="clear:left"></div>
745 <div class="dlist"><dl>
746 <dt class="hdlist1">
747 --envelope-sender=&lt;address&gt;
748 </dt>
749 <dd>
751 Specify the envelope sender used to send the emails.
752 This is useful if your default address is not the address that is
753 subscribed to a list. In order to use the <em>From</em> address, set the
754 value to "auto". If you use the sendmail binary, you must have
755 suitable privileges for the -f parameter. Default is the value of the
756 <em>sendemail.envelopesender</em> configuration variable; if that is
757 unspecified, choosing the envelope sender is left to your MTA.
758 </p>
759 </dd>
760 <dt class="hdlist1">
761 --smtp-encryption=&lt;encryption&gt;
762 </dt>
763 <dd>
765 Specify the encryption to use, either <em>ssl</em> or <em>tls</em>. Any other
766 value reverts to plain SMTP. Default is the value of
767 <em>sendemail.smtpencryption</em>.
768 </p>
769 </dd>
770 <dt class="hdlist1">
771 --smtp-domain=&lt;FQDN&gt;
772 </dt>
773 <dd>
775 Specifies the Fully Qualified Domain Name (FQDN) used in the
776 HELO/EHLO command to the SMTP server. Some servers require the
777 FQDN to match your IP address. If not set, git send-email attempts
778 to determine your FQDN automatically. Default is the value of
779 <em>sendemail.smtpdomain</em>.
780 </p>
781 </dd>
782 <dt class="hdlist1">
783 --smtp-pass[=&lt;password&gt;]
784 </dt>
785 <dd>
787 Password for SMTP-AUTH. The argument is optional: If no
788 argument is specified, then the empty string is used as
789 the password. Default is the value of <em>sendemail.smtppass</em>,
790 however <em>--smtp-pass</em> always overrides this value.
791 </p>
792 <div class="paragraph"><p>Furthermore, passwords need not be specified in configuration files
793 or on the command line. If a username has been specified (with
794 <em>--smtp-user</em> or a <em>sendemail.smtpuser</em>), but no password has been
795 specified (with <em>--smtp-pass</em> or <em>sendemail.smtppass</em>), then the
796 user is prompted for a password while the input is masked for privacy.</p></div>
797 </dd>
798 <dt class="hdlist1">
799 --smtp-server=&lt;host&gt;
800 </dt>
801 <dd>
803 If set, specifies the outgoing SMTP server to use (e.g.
804 <tt>smtp.example.com</tt> or a raw IP address). Alternatively it can
805 specify a full pathname of a sendmail-like program instead;
806 the program must support the <tt>-i</tt> option. Default value can
807 be specified by the <em>sendemail.smtpserver</em> configuration
808 option; the built-in default is <tt>/usr/sbin/sendmail</tt> or
809 <tt>/usr/lib/sendmail</tt> if such program is available, or
810 <tt>localhost</tt> otherwise.
811 </p>
812 </dd>
813 <dt class="hdlist1">
814 --smtp-server-port=&lt;port&gt;
815 </dt>
816 <dd>
818 Specifies a port different from the default port (SMTP
819 servers typically listen to smtp port 25, but may also listen to
820 submission port 587, or the common SSL smtp port 465);
821 symbolic port names (e.g. "submission" instead of 587)
822 are also accepted. The port can also be set with the
823 <em>sendemail.smtpserverport</em> configuration variable.
824 </p>
825 </dd>
826 <dt class="hdlist1">
827 --smtp-server-option=&lt;option&gt;
828 </dt>
829 <dd>
831 If set, specifies the outgoing SMTP server option to use.
832 Default value can be specified by the <em>sendemail.smtpserveroption</em>
833 configuration option.
834 </p>
835 <div class="paragraph"><p>The --smtp-server-option option must be repeated for each option you want
836 to pass to the server. Likewise, different lines in the configuration files
837 must be used for each option.</p></div>
838 </dd>
839 <dt class="hdlist1">
840 --smtp-ssl
841 </dt>
842 <dd>
844 Legacy alias for <em>--smtp-encryption ssl</em>.
845 </p>
846 </dd>
847 <dt class="hdlist1">
848 --smtp-user=&lt;user&gt;
849 </dt>
850 <dd>
852 Username for SMTP-AUTH. Default is the value of <em>sendemail.smtpuser</em>;
853 if a username is not specified (with <em>--smtp-user</em> or <em>sendemail.smtpuser</em>),
854 then authentication is not attempted.
855 </p>
856 </dd>
857 </dl></div>
858 <h3 id="_automating">Automating</h3><div style="clear:left"></div>
859 <div class="dlist"><dl>
860 <dt class="hdlist1">
861 --to-cmd=&lt;command&gt;
862 </dt>
863 <dd>
865 Specify a command to execute once per patch file which
866 should generate patch file specific "To:" entries.
867 Output of this command must be single email address per line.
868 Default is the value of <em>sendemail.tocmd</em> configuration value.
869 </p>
870 </dd>
871 <dt class="hdlist1">
872 --cc-cmd=&lt;command&gt;
873 </dt>
874 <dd>
876 Specify a command to execute once per patch file which
877 should generate patch file specific "Cc:" entries.
878 Output of this command must be single email address per line.
879 Default is the value of <em>sendemail.cccmd</em> configuration value.
880 </p>
881 </dd>
882 <dt class="hdlist1">
883 --[no-]chain-reply-to
884 </dt>
885 <dd>
887 If this is set, each email will be sent as a reply to the previous
888 email sent. If disabled with "--no-chain-reply-to", all emails after
889 the first will be sent as replies to the first email sent. When using
890 this, it is recommended that the first file given be an overview of the
891 entire patch series. Disabled by default, but the <em>sendemail.chainreplyto</em>
892 configuration variable can be used to enable it.
893 </p>
894 </dd>
895 <dt class="hdlist1">
896 --identity=&lt;identity&gt;
897 </dt>
898 <dd>
900 A configuration identity. When given, causes values in the
901 <em>sendemail.&lt;identity&gt;</em> subsection to take precedence over
902 values in the <em>sendemail</em> section. The default identity is
903 the value of <em>sendemail.identity</em>.
904 </p>
905 </dd>
906 <dt class="hdlist1">
907 --[no-]signed-off-by-cc
908 </dt>
909 <dd>
911 If this is set, add emails found in Signed-off-by: or Cc: lines to the
912 cc list. Default is the value of <em>sendemail.signedoffbycc</em> configuration
913 value; if that is unspecified, default to --signed-off-by-cc.
914 </p>
915 </dd>
916 <dt class="hdlist1">
917 --suppress-cc=&lt;category&gt;
918 </dt>
919 <dd>
921 Specify an additional category of recipients to suppress the
922 auto-cc of:
923 </p>
924 <div class="ulist"><ul>
925 <li>
927 <em>author</em> will avoid including the patch author
928 </p>
929 </li>
930 <li>
932 <em>self</em> will avoid including the sender
933 </p>
934 </li>
935 <li>
937 <em>cc</em> will avoid including anyone mentioned in Cc lines in the patch header
938 except for self (use <em>self</em> for that).
939 </p>
940 </li>
941 <li>
943 <em>bodycc</em> will avoid including anyone mentioned in Cc lines in the
944 patch body (commit message) except for self (use <em>self</em> for that).
945 </p>
946 </li>
947 <li>
949 <em>sob</em> will avoid including anyone mentioned in Signed-off-by lines except
950 for self (use <em>self</em> for that).
951 </p>
952 </li>
953 <li>
955 <em>cccmd</em> will avoid running the --cc-cmd.
956 </p>
957 </li>
958 <li>
960 <em>body</em> is equivalent to <em>sob</em> + <em>bodycc</em>
961 </p>
962 </li>
963 <li>
965 <em>all</em> will suppress all auto cc values.
966 </p>
967 </li>
968 </ul></div>
969 <div class="paragraph"><p>Default is the value of <em>sendemail.suppresscc</em> configuration value; if
970 that is unspecified, default to <em>self</em> if --suppress-from is
971 specified, as well as <em>body</em> if --no-signed-off-cc is specified.</p></div>
972 </dd>
973 <dt class="hdlist1">
974 --[no-]suppress-from
975 </dt>
976 <dd>
978 If this is set, do not add the From: address to the cc: list.
979 Default is the value of <em>sendemail.suppressfrom</em> configuration
980 value; if that is unspecified, default to --no-suppress-from.
981 </p>
982 </dd>
983 <dt class="hdlist1">
984 --[no-]thread
985 </dt>
986 <dd>
988 If this is set, the In-Reply-To and References headers will be
989 added to each email sent. Whether each mail refers to the
990 previous email (<tt>deep</tt> threading per <em>git format-patch</em>
991 wording) or to the first email (<tt>shallow</tt> threading) is
992 governed by "--[no-]chain-reply-to".
993 </p>
994 <div class="paragraph"><p>If disabled with "--no-thread", those headers will not be added
995 (unless specified with --in-reply-to). Default is the value of the
996 <em>sendemail.thread</em> configuration value; if that is unspecified,
997 default to --thread.</p></div>
998 <div class="paragraph"><p>It is up to the user to ensure that no In-Reply-To header already
999 exists when <em>git send-email</em> is asked to add it (especially note that
1000 <em>git format-patch</em> can be configured to do the threading itself).
1001 Failure to do so may not produce the expected result in the
1002 recipient&#8217;s MUA.</p></div>
1003 </dd>
1004 </dl></div>
1005 <h3 id="_administering">Administering</h3><div style="clear:left"></div>
1006 <div class="dlist"><dl>
1007 <dt class="hdlist1">
1008 --confirm=&lt;mode&gt;
1009 </dt>
1010 <dd>
1012 Confirm just before sending:
1013 </p>
1014 <div class="ulist"><ul>
1015 <li>
1017 <em>always</em> will always confirm before sending
1018 </p>
1019 </li>
1020 <li>
1022 <em>never</em> will never confirm before sending
1023 </p>
1024 </li>
1025 <li>
1027 <em>cc</em> will confirm before sending when send-email has automatically
1028 added addresses from the patch to the Cc list
1029 </p>
1030 </li>
1031 <li>
1033 <em>compose</em> will confirm before sending the first message when using --compose.
1034 </p>
1035 </li>
1036 <li>
1038 <em>auto</em> is equivalent to <em>cc</em> + <em>compose</em>
1039 </p>
1040 </li>
1041 </ul></div>
1042 <div class="paragraph"><p>Default is the value of <em>sendemail.confirm</em> configuration value; if that
1043 is unspecified, default to <em>auto</em> unless any of the suppress options
1044 have been specified, in which case default to <em>compose</em>.</p></div>
1045 </dd>
1046 <dt class="hdlist1">
1047 --dry-run
1048 </dt>
1049 <dd>
1051 Do everything except actually send the emails.
1052 </p>
1053 </dd>
1054 <dt class="hdlist1">
1055 --[no-]format-patch
1056 </dt>
1057 <dd>
1059 When an argument may be understood either as a reference or as a file name,
1060 choose to understand it as a format-patch argument (<em>--format-patch</em>)
1061 or as a file name (<em>--no-format-patch</em>). By default, when such a conflict
1062 occurs, git send-email will fail.
1063 </p>
1064 </dd>
1065 <dt class="hdlist1">
1066 --quiet
1067 </dt>
1068 <dd>
1070 Make git-send-email less verbose. One line per email should be
1071 all that is output.
1072 </p>
1073 </dd>
1074 <dt class="hdlist1">
1075 --[no-]validate
1076 </dt>
1077 <dd>
1079 Perform sanity checks on patches.
1080 Currently, validation means the following:
1081 </p>
1082 <div class="ulist"><ul>
1083 <li>
1085 Warn of patches that contain lines longer than 998 characters; this
1086 is due to SMTP limits as described by <a href="http://www.ietf.org/rfc/rfc2821.txt">http://www.ietf.org/rfc/rfc2821.txt</a>.
1087 </p>
1088 </li>
1089 </ul></div>
1090 <div class="paragraph"><p>Default is the value of <em>sendemail.validate</em>; if this is not set,
1091 default to <em>--validate</em>.</p></div>
1092 </dd>
1093 <dt class="hdlist1">
1094 --force
1095 </dt>
1096 <dd>
1098 Send emails even if safety checks would prevent it.
1099 </p>
1100 </dd>
1101 </dl></div>
1102 </div>
1103 <h2 id="_configuration">CONFIGURATION</h2>
1104 <div class="sectionbody">
1105 <div class="dlist"><dl>
1106 <dt class="hdlist1">
1107 sendemail.aliasesfile
1108 </dt>
1109 <dd>
1111 To avoid typing long email addresses, point this to one or more
1112 email aliases files. You must also supply <em>sendemail.aliasfiletype</em>.
1113 </p>
1114 </dd>
1115 <dt class="hdlist1">
1116 sendemail.aliasfiletype
1117 </dt>
1118 <dd>
1120 Format of the file(s) specified in sendemail.aliasesfile. Must be
1121 one of <em>mutt</em>, <em>mailrc</em>, <em>pine</em>, <em>elm</em>, or <em>gnus</em>.
1122 </p>
1123 </dd>
1124 <dt class="hdlist1">
1125 sendemail.multiedit
1126 </dt>
1127 <dd>
1129 If true (default), a single editor instance will be spawned to edit
1130 files you have to edit (patches when <em>--annotate</em> is used, and the
1131 summary when <em>--compose</em> is used). If false, files will be edited one
1132 after the other, spawning a new editor each time.
1133 </p>
1134 </dd>
1135 <dt class="hdlist1">
1136 sendemail.confirm
1137 </dt>
1138 <dd>
1140 Sets the default for whether to confirm before sending. Must be
1141 one of <em>always</em>, <em>never</em>, <em>cc</em>, <em>compose</em>, or <em>auto</em>. See <em>--confirm</em>
1142 in the previous section for the meaning of these values.
1143 </p>
1144 </dd>
1145 </dl></div>
1146 </div>
1147 <h2 id="_example">EXAMPLE</h2>
1148 <div class="sectionbody">
1149 <h3 id="_use_gmail_as_the_smtp_server">Use gmail as the smtp server</h3><div style="clear:left"></div>
1150 <div class="paragraph"><p>To use <em>git send-email</em> to send your patches through the GMail SMTP server,
1151 edit ~/.gitconfig to specify your account settings:</p></div>
1152 <div class="literalblock">
1153 <div class="content">
1154 <pre><tt>[sendemail]
1155 smtpencryption = tls
1156 smtpserver = smtp.gmail.com
1157 smtpuser = yourname@gmail.com
1158 smtpserverport = 587</tt></pre>
1159 </div></div>
1160 <div class="paragraph"><p>Once your commits are ready to be sent to the mailing list, run the
1161 following commands:</p></div>
1162 <div class="literalblock">
1163 <div class="content">
1164 <pre><tt>$ git format-patch --cover-letter -M origin/master -o outgoing/
1165 $ edit outgoing/0000-*
1166 $ git send-email outgoing/*</tt></pre>
1167 </div></div>
1168 <div class="paragraph"><p>Note: the following perl modules are required
1169 Net::SMTP::SSL, MIME::Base64 and Authen::SASL</p></div>
1170 </div>
1171 <h2 id="_see_also">SEE ALSO</h2>
1172 <div class="sectionbody">
1173 <div class="paragraph"><p><a href="git-format-patch.html">git-format-patch(1)</a>, <a href="git-imap-send.html">git-imap-send(1)</a>, mbox(5)</p></div>
1174 </div>
1175 <h2 id="_git">GIT</h2>
1176 <div class="sectionbody">
1177 <div class="paragraph"><p>Part of the <a href="git.html">git(1)</a> suite</p></div>
1178 </div>
1179 </div>
1180 <div id="footnotes"><hr /></div>
1181 <div id="footer">
1182 <div id="footer-text">
1183 Last updated 2011-09-21 23:01:14 PDT
1184 </div>
1185 </div>
1186 </body>
1187 </html>