| git-imap-send(1) | |
| ================ | |
| NAME | |
| ---- | |
| git-imap-send - Send a collection of patches from stdin to an IMAP folder | |
| SYNOPSIS | |
| -------- | |
| [verse] | |
| 'git imap-send' [-v] [-q] [--[no-]curl] | |
| DESCRIPTION | |
| ----------- | |
| This command uploads a mailbox generated with 'git format-patch' | |
| 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. | |
| Typical usage is something like: | |
| git format-patch --signoff --stdout --attach origin | git imap-send | |
| OPTIONS | |
| ------- | |
| -v:: | |
| --verbose:: | |
| Be verbose. | |
| -q:: | |
| --quiet:: | |
| Be quiet. | |
| --curl:: | |
| 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. | |
| --no-curl:: | |
| Talk to the IMAP server using git's own IMAP routines instead of | |
| using libcurl. Ignored if Git was built with the NO_OPENSSL option | |
| set. | |
| CONFIGURATION | |
| ------------- | |
| To use the tool, imap.folder and either imap.tunnel or imap.host must be set | |
| to appropriate values. | |
| Variables | |
| ~~~~~~~~~ | |
| imap.folder:: | |
| The folder to drop the mails into, which is typically the Drafts | |
| folder. For example: "INBOX.Drafts", "INBOX/Drafts" or | |
| "[Gmail]/Drafts". Required. | |
| imap.tunnel:: | |
| Command used to setup 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. | |
| imap.host:: | |
| A URL identifying the server. Use a `imap://` prefix for non-secure | |
| connections and a `imaps://` prefix for secure connections. | |
| Ignored when imap.tunnel is set, but required otherwise. | |
| imap.user:: | |
| The username to use when logging in to the server. | |
| imap.pass:: | |
| The password to use when logging in to the server. | |
| imap.port:: | |
| 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. | |
| imap.sslverify:: | |
| A boolean to enable/disable verification of the server certificate | |
| used by the SSL/TLS connection. Default is `true`. Ignored when | |
| imap.tunnel is set. | |
| imap.preformattedHTML:: | |
| 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 `false`. | |
| imap.authMethod:: | |
| Specify authenticate method for authentication with 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're running git-imap-send with the `--no-curl` | |
| option, the only supported method is 'CRAM-MD5'. If this is not set | |
| then 'git imap-send' uses the basic IMAP plaintext LOGIN command. | |
| Examples | |
| ~~~~~~~~ | |
| Using tunnel mode: | |
| .......................... | |
| [imap] | |
| folder = "INBOX.Drafts" | |
| tunnel = "ssh -q -C user@example.com /usr/bin/imapd ./Maildir 2> /dev/null" | |
| .......................... | |
| Using direct mode: | |
| ......................... | |
| [imap] | |
| folder = "INBOX.Drafts" | |
| host = imap://imap.example.com | |
| user = bob | |
| pass = p4ssw0rd | |
| ......................... | |
| Using direct mode with SSL: | |
| ......................... | |
| [imap] | |
| folder = "INBOX.Drafts" | |
| host = imaps://imap.example.com | |
| user = bob | |
| pass = p4ssw0rd | |
| port = 123 | |
| sslverify = false | |
| ......................... | |
| EXAMPLE | |
| ------- | |
| To submit patches using GMail's IMAP interface, first, edit your ~/.gitconfig | |
| to specify your account settings: | |
| --------- | |
| [imap] | |
| folder = "[Gmail]/Drafts" | |
| host = imaps://imap.gmail.com | |
| user = user@gmail.com | |
| port = 993 | |
| sslverify = false | |
| --------- | |
| You might need to instead use: folder = "[Google Mail]/Drafts" if you get an error | |
| that the "Folder doesn't exist". | |
| Once the commits are ready to be sent, run the following command: | |
| $ git format-patch --cover-letter -M --stdout origin/master | git imap-send | |
| Just make sure to disable line wrapping in the email client (GMail's web | |
| interface will wrap lines no matter what, so you need to use a real | |
| IMAP client). | |
| CAUTION | |
| ------- | |
| 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't check this. | |
| Thunderbird in particular is known to be problematic. Thunderbird | |
| users may wish to visit this web page for more information: | |
| http://kb.mozillazine.org/Plain_text_e-mail_-_Thunderbird#Completely_plain_email | |
| SEE ALSO | |
| -------- | |
| linkgit:git-format-patch[1], linkgit:git-send-email[1], mbox(5) | |
| GIT | |
| --- | |
| Part of the linkgit:git[1] suite |