1GIT-IMAP-SEND(1)                  Git Manual                  GIT-IMAP-SEND(1)
2
3
4

NAME

6       git-imap-send - Send a collection of patches from stdin to an IMAP
7       folder
8

SYNOPSIS

10       git imap-send [-v] [-q] [--[no-]curl]
11
12

DESCRIPTION

14       This command uploads a mailbox generated with git format-patch into an
15       IMAP drafts folder. This allows patches to be sent as other email is
16       when using mail clients that cannot read mailbox files directly. The
17       command also works with any general mailbox in which emails have the
18       fields "From", "Date", and "Subject" in that order.
19
20       Typical usage is something like:
21
22       git format-patch --signoff --stdout --attach origin | git imap-send
23

OPTIONS

25       -v, --verbose
26           Be verbose.
27
28       -q, --quiet
29           Be quiet.
30
31       --curl
32           Use libcurl to communicate with the IMAP server, unless tunneling
33           into it. Ignored if Git was built without the
34           USE_CURL_FOR_IMAP_SEND option set.
35
36       --no-curl
37           Talk to the IMAP server using git’s own IMAP routines instead of
38           using libcurl. Ignored if Git was built with the NO_OPENSSL option
39           set.
40

CONFIGURATION

42       To use the tool, imap.folder and either imap.tunnel or imap.host must
43       be set to appropriate values.
44
45   Variables
46       imap.folder
47           The folder to drop the mails into, which is typically the Drafts
48           folder. For example: "INBOX.Drafts", "INBOX/Drafts" or
49           "[Gmail]/Drafts". Required.
50
51       imap.tunnel
52           Command used to setup a tunnel to the IMAP server through which
53           commands will be piped instead of using a direct network connection
54           to the server. Required when imap.host is not set.
55
56       imap.host
57           A URL identifying the server. Use an imap:// prefix for non-secure
58           connections and an imaps:// prefix for secure connections. Ignored
59           when imap.tunnel is set, but required otherwise.
60
61       imap.user
62           The username to use when logging in to the server.
63
64       imap.pass
65           The password to use when logging in to the server.
66
67       imap.port
68           An integer port number to connect to on the server. Defaults to 143
69           for imap:// hosts and 993 for imaps:// hosts. Ignored when
70           imap.tunnel is set.
71
72       imap.sslverify
73           A boolean to enable/disable verification of the server certificate
74           used by the SSL/TLS connection. Default is true. Ignored when
75           imap.tunnel is set.
76
77       imap.preformattedHTML
78           A boolean to enable/disable the use of html encoding when sending a
79           patch. An html encoded patch will be bracketed with <pre> and have
80           a content type of text/html. Ironically, enabling this option
81           causes Thunderbird to send the patch as a plain/text, format=fixed
82           email. Default is false.
83
84       imap.authMethod
85           Specify authenticate method for authentication with IMAP server. If
86           Git was built with the NO_CURL option, or if your curl version is
87           older than 7.34.0, or if you’re running git-imap-send with the
88           --no-curl option, the only supported method is CRAM-MD5. If this is
89           not set then git imap-send uses the basic IMAP plaintext LOGIN
90           command.
91
92   Examples
93       Using tunnel mode:
94
95           [imap]
96               folder = "INBOX.Drafts"
97               tunnel = "ssh -q -C user@example.com /usr/bin/imapd ./Maildir 2> /dev/null"
98
99       Using direct mode:
100
101           [imap]
102               folder = "INBOX.Drafts"
103               host = imap://imap.example.com
104               user = bob
105               pass = p4ssw0rd
106
107       Using direct mode with SSL:
108
109           [imap]
110               folder = "INBOX.Drafts"
111               host = imaps://imap.example.com
112               user = bob
113               pass = p4ssw0rd
114               port = 123
115               sslverify = false
116

EXAMPLES

118       To submit patches using GMail’s IMAP interface, first, edit your
119       ~/.gitconfig to specify your account settings:
120
121           [imap]
122                   folder = "[Gmail]/Drafts"
123                   host = imaps://imap.gmail.com
124                   user = user@gmail.com
125                   port = 993
126                   sslverify = false
127
128
129       You might need to instead use: folder = "[Google Mail]/Drafts" if you
130       get an error that the "Folder doesn’t exist".
131
132       Once the commits are ready to be sent, run the following command:
133
134           $ git format-patch --cover-letter -M --stdout origin/master | git imap-send
135
136       Just make sure to disable line wrapping in the email client (GMail’s
137       web interface will wrap lines no matter what, so you need to use a real
138       IMAP client).
139

CAUTION

141       It is still your responsibility to make sure that the email message
142       sent by your email program meets the standards of your project. Many
143       projects do not like patches to be attached. Some mail agents will
144       transform patches (e.g. wrap lines, send them as format=flowed) in ways
145       that make them fail. You will get angry flames ridiculing you if you
146       don’t check this.
147
148       Thunderbird in particular is known to be problematic. Thunderbird users
149       may wish to visit this web page for more information:
150       http://kb.mozillazine.org/Plain_text_e-mail_-_Thunderbird#Completely_plain_email
151

SEE ALSO

153       git-format-patch(1), git-send-email(1), mbox(5)
154

GIT

156       Part of the git(1) suite
157
158
159
160Git 2.24.1                        12/10/2019                  GIT-IMAP-SEND(1)
Impressum