logo

oasis-root

Compiled tree of Oasis Linux based on own branch at <https://hacktivis.me/git/oasis/> git clone https://anongit.hacktivis.me/git/oasis-root.git

git-imap-send.1 (7513B)


  1. '\" t
  2. .\" Title: git-imap-send
  3. .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
  4. .\" Generator: DocBook XSL Stylesheets v1.79.2 <http://docbook.sf.net/>
  5. .\" Date: 2025-03-14
  6. .\" Manual: Git Manual
  7. .\" Source: Git 2.49.0
  8. .\" Language: English
  9. .\"
  10. .TH "GIT\-IMAP\-SEND" "1" "2025-03-14" "Git 2\&.49\&.0" "Git Manual"
  11. .\" -----------------------------------------------------------------
  12. .\" * Define some portability stuff
  13. .\" -----------------------------------------------------------------
  14. .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  15. .\" http://bugs.debian.org/507673
  16. .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
  17. .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  18. .ie \n(.g .ds Aq \(aq
  19. .el .ds Aq '
  20. .\" -----------------------------------------------------------------
  21. .\" * set default formatting
  22. .\" -----------------------------------------------------------------
  23. .\" disable hyphenation
  24. .nh
  25. .\" disable justification (adjust text to left margin only)
  26. .ad l
  27. .\" -----------------------------------------------------------------
  28. .\" * MAIN CONTENT STARTS HERE *
  29. .\" -----------------------------------------------------------------
  30. .SH "NAME"
  31. git-imap-send \- Send a collection of patches from stdin to an IMAP folder
  32. .SH "SYNOPSIS"
  33. .sp
  34. .nf
  35. \fIgit imap\-send\fR [\-v] [\-q] [\-\-[no\-]curl]
  36. .fi
  37. .SH "DESCRIPTION"
  38. .sp
  39. This command uploads a mailbox generated with \fIgit format\-patch\fR into an IMAP drafts folder\&. This allows patches to be sent as other email is when using mail clients that cannot read mailbox files directly\&. The command also works with any general mailbox in which emails have the fields "From", "Date", and "Subject" in that order\&.
  40. .sp
  41. Typical usage is something like:
  42. .sp
  43. git format\-patch \-\-signoff \-\-stdout \-\-attach origin | git imap\-send
  44. .SH "OPTIONS"
  45. .PP
  46. \-v, \-\-verbose
  47. .RS 4
  48. Be verbose\&.
  49. .RE
  50. .PP
  51. \-q, \-\-quiet
  52. .RS 4
  53. Be quiet\&.
  54. .RE
  55. .PP
  56. \-\-curl
  57. .RS 4
  58. Use libcurl to communicate with the IMAP server, unless tunneling into it\&. Ignored if Git was built without the USE_CURL_FOR_IMAP_SEND option set\&.
  59. .RE
  60. .PP
  61. \-\-no\-curl
  62. .RS 4
  63. Talk to the IMAP server using git\(cqs own IMAP routines instead of using libcurl\&. Ignored if Git was built with the NO_OPENSSL option set\&.
  64. .RE
  65. .SH "CONFIGURATION"
  66. .sp
  67. To use the tool, \fBimap\&.folder\fR and either \fBimap\&.tunnel\fR or \fBimap\&.host\fR must be set to appropriate values\&.
  68. .sp
  69. Everything above this line in this section isn\(cqt included from the \fBgit-config\fR(1) documentation\&. The content that follows is the same as what\(cqs found there:
  70. .PP
  71. imap\&.folder
  72. .RS 4
  73. The folder to drop the mails into, which is typically the Drafts folder\&. For example: "INBOX\&.Drafts", "INBOX/Drafts" or "[Gmail]/Drafts"\&. Required\&.
  74. .RE
  75. .PP
  76. imap\&.tunnel
  77. .RS 4
  78. Command used to set up a tunnel to the IMAP server through which commands will be piped instead of using a direct network connection to the server\&. Required when imap\&.host is not set\&.
  79. .RE
  80. .PP
  81. imap\&.host
  82. .RS 4
  83. A URL identifying the server\&. Use an
  84. \fBimap://\fR
  85. prefix for non\-secure connections and an
  86. \fBimaps://\fR
  87. prefix for secure connections\&. Ignored when imap\&.tunnel is set, but required otherwise\&.
  88. .RE
  89. .PP
  90. imap\&.user
  91. .RS 4
  92. The username to use when logging in to the server\&.
  93. .RE
  94. .PP
  95. imap\&.pass
  96. .RS 4
  97. The password to use when logging in to the server\&.
  98. .RE
  99. .PP
  100. imap\&.port
  101. .RS 4
  102. An integer port number to connect to on the server\&. Defaults to 143 for imap:// hosts and 993 for imaps:// hosts\&. Ignored when imap\&.tunnel is set\&.
  103. .RE
  104. .PP
  105. imap\&.sslverify
  106. .RS 4
  107. A boolean to enable/disable verification of the server certificate used by the SSL/TLS connection\&. Default is
  108. \fBtrue\fR\&. Ignored when imap\&.tunnel is set\&.
  109. .RE
  110. .PP
  111. imap\&.preformattedHTML
  112. .RS 4
  113. A boolean to enable/disable the use of html encoding when sending a patch\&. An html encoded patch will be bracketed with <pre> and have a content type of text/html\&. Ironically, enabling this option causes Thunderbird to send the patch as a plain/text, format=fixed email\&. Default is
  114. \fBfalse\fR\&.
  115. .RE
  116. .PP
  117. imap\&.authMethod
  118. .RS 4
  119. Specify the authentication method for authenticating with the IMAP server\&. If Git was built with the NO_CURL option, or if your curl version is older than 7\&.34\&.0, or if you\(cqre running git\-imap\-send with the
  120. \fB\-\-no\-curl\fR
  121. option, the only supported method is
  122. \fICRAM\-MD5\fR\&. If this is not set then
  123. \fIgit imap\-send\fR
  124. uses the basic IMAP plaintext LOGIN command\&.
  125. .RE
  126. .SH "EXAMPLES"
  127. .sp
  128. Using tunnel mode:
  129. .sp
  130. .if n \{\
  131. .RS 4
  132. .\}
  133. .nf
  134. [imap]
  135. folder = "INBOX\&.Drafts"
  136. tunnel = "ssh \-q \-C user@example\&.com /usr/bin/imapd \&./Maildir 2> /dev/null"
  137. .fi
  138. .if n \{\
  139. .RE
  140. .\}
  141. .sp
  142. Using direct mode:
  143. .sp
  144. .if n \{\
  145. .RS 4
  146. .\}
  147. .nf
  148. [imap]
  149. folder = "INBOX\&.Drafts"
  150. host = imap://imap\&.example\&.com
  151. user = bob
  152. pass = p4ssw0rd
  153. .fi
  154. .if n \{\
  155. .RE
  156. .\}
  157. .sp
  158. Using direct mode with SSL:
  159. .sp
  160. .if n \{\
  161. .RS 4
  162. .\}
  163. .nf
  164. [imap]
  165. folder = "INBOX\&.Drafts"
  166. host = imaps://imap\&.example\&.com
  167. user = bob
  168. pass = p4ssw0rd
  169. port = 123
  170. ; sslVerify = false
  171. .fi
  172. .if n \{\
  173. .RE
  174. .\}
  175. .sp
  176. .if n \{\
  177. .sp
  178. .\}
  179. .RS 4
  180. .it 1 an-trap
  181. .nr an-no-space-flag 1
  182. .nr an-break-flag 1
  183. .br
  184. .ps +1
  185. \fBNote\fR
  186. .ps -1
  187. .br
  188. .sp
  189. You may want to use \fBsslVerify=false\fR while troubleshooting, if you suspect that the reason you are having trouble connecting is because the certificate you use at the private server \fBexample\&.com\fR you are trying to set up (or have set up) may not be verified correctly\&.
  190. .sp .5v
  191. .RE
  192. .sp
  193. Using Gmail\(cqs IMAP interface:
  194. .sp
  195. .if n \{\
  196. .RS 4
  197. .\}
  198. .nf
  199. [imap]
  200. folder = "[Gmail]/Drafts"
  201. host = imaps://imap\&.gmail\&.com
  202. user = user@gmail\&.com
  203. port = 993
  204. .fi
  205. .if n \{\
  206. .RE
  207. .\}
  208. .sp
  209. .if n \{\
  210. .sp
  211. .\}
  212. .RS 4
  213. .it 1 an-trap
  214. .nr an-no-space-flag 1
  215. .nr an-break-flag 1
  216. .br
  217. .ps +1
  218. \fBNote\fR
  219. .ps -1
  220. .br
  221. .sp
  222. You might need to instead use: \fBfolder\fR \fB=\fR "[\fBGoogle\fR \fBMail\fR]\fB/Drafts\fR" if you get an error that the "Folder doesn\(cqt exist"\&.
  223. .sp .5v
  224. .RE
  225. .if n \{\
  226. .sp
  227. .\}
  228. .RS 4
  229. .it 1 an-trap
  230. .nr an-no-space-flag 1
  231. .nr an-break-flag 1
  232. .br
  233. .ps +1
  234. \fBNote\fR
  235. .ps -1
  236. .br
  237. .sp
  238. If your Gmail account is set to another language than English, the name of the "Drafts" folder will be localized\&.
  239. .sp .5v
  240. .RE
  241. .sp
  242. Once the commits are ready to be sent, run the following command:
  243. .sp
  244. .if n \{\
  245. .RS 4
  246. .\}
  247. .nf
  248. $ git format\-patch \-\-cover\-letter \-M \-\-stdout origin/master | git imap\-send
  249. .fi
  250. .if n \{\
  251. .RE
  252. .\}
  253. .sp
  254. Just make sure to disable line wrapping in the email client (Gmail\(cqs web interface will wrap lines no matter what, so you need to use a real IMAP client)\&.
  255. .SH "CAUTION"
  256. .sp
  257. It is still your responsibility to make sure that the email message sent by your email program meets the standards of your project\&. Many projects do not like patches to be attached\&. Some mail agents will transform patches (e\&.g\&. wrap lines, send them as format=flowed) in ways that make them fail\&. You will get angry flames ridiculing you if you don\(cqt check this\&.
  258. .sp
  259. Thunderbird in particular is known to be problematic\&. Thunderbird users may wish to visit this web page for more information: \m[blue]\fBhttps://kb\&.mozillazine\&.org/Plain_text_e\-mail_\-_Thunderbird#Completely_plain_email\fR\m[]
  260. .SH "SEE ALSO"
  261. .sp
  262. \fBgit-format-patch\fR(1), \fBgit-send-email\fR(1), mbox(5)
  263. .SH "GIT"
  264. .sp
  265. Part of the \fBgit\fR(1) suite