'\" t .\" Title: git-imap-send .\" Author: [FIXME: author] [see http://docbook.sf.net/el/author] .\" Generator: DocBook XSL Stylesheets v1.76.1 <http://docbook.sf.net/> .\" Date: 02/24/2014 .\" Manual: Git Manual .\" Source: Git 1.9.0 .\" Language: English .\" .TH "GIT\-IMAP\-SEND" "1" "02/24/2014" "Git 1\&.9\&.0" "Git Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" git-imap-send \- Send a collection of patches from stdin to an IMAP folder .SH "SYNOPSIS" .sp .nf \fIgit imap\-send\fR .fi .sp .SH "DESCRIPTION" .sp 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\&. .sp Typical usage is something like: .sp git format\-patch \-\-signoff \-\-stdout \-\-attach origin | git imap\-send .SH "CONFIGURATION" .sp To use the tool, imap\&.folder and either imap\&.tunnel or imap\&.host must be set to appropriate values\&. .SS "Variables" .PP imap\&.folder .RS 4 The folder to drop the mails into, which is typically the Drafts folder\&. For example: "INBOX\&.Drafts", "INBOX/Drafts" or "[Gmail]/Drafts"\&. Required to use imap\-send\&. .RE .PP imap\&.tunnel .RS 4 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 to use imap\-send\&. .RE .PP imap\&.host .RS 4 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 to use imap\-send otherwise\&. .RE .PP imap\&.user .RS 4 The username to use when logging in to the server\&. .RE .PP imap\&.pass .RS 4 The password to use when logging in to the server\&. .RE .PP imap\&.port .RS 4 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\&. .RE .PP imap\&.sslverify .RS 4 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\&. .RE .PP imap\&.preformattedHTML .RS 4 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\&. .RE .PP imap\&.authMethod .RS 4 Specify authenticate method for authentication with IMAP server\&. Current supported method is \fICRAM\-MD5\fR only\&. .RE .SS "Examples" .sp Using tunnel mode: .sp .if n \{\ .RS 4 .\} .nf [imap] folder = "INBOX\&.Drafts" tunnel = "ssh \-q \-C user@example\&.com /usr/bin/imapd \&./Maildir 2> /dev/null" .fi .if n \{\ .RE .\} .sp Using direct mode: .sp .if n \{\ .RS 4 .\} .nf [imap] folder = "INBOX\&.Drafts" host = imap://imap\&.example\&.com user = bob pass = p4ssw0rd .fi .if n \{\ .RE .\} .sp Using direct mode with SSL: .sp .if n \{\ .RS 4 .\} .nf [imap] folder = "INBOX\&.Drafts" host = imaps://imap\&.example\&.com user = bob pass = p4ssw0rd port = 123 sslverify = false .fi .if n \{\ .RE .\} .SH "EXAMPLE" .sp To submit patches using GMail\(cqs IMAP interface, first, edit your ~/\&.gitconfig to specify your account settings: .sp .if n \{\ .RS 4 .\} .nf [imap] folder = "[Gmail]/Drafts" host = imaps://imap\&.gmail\&.com user = user@gmail\&.com port = 993 sslverify = false .fi .if n \{\ .RE .\} .sp .sp You might need to instead use: folder = "[Google Mail]/Drafts" if you get an error that the "Folder doesn\(cqt exist"\&. .sp Once the commits are ready to be sent, run the following command: .sp .if n \{\ .RS 4 .\} .nf $ git format\-patch \-\-cover\-letter \-M \-\-stdout origin/master | git imap\-send .fi .if n \{\ .RE .\} .sp 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)\&. .SH "CAUTION" .sp 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\&. .sp Thunderbird in particular is known to be problematic\&. Thunderbird users may wish to visit this web page for more information: \m[blue]\fBhttp://kb\&.mozillazine\&.org/Plain_text_e\-mail_\-_Thunderbird#Completely_plain_email\fR\m[] .SH "SEE ALSO" .sp \fBgit-format-patch\fR(1), \fBgit-send-email\fR(1), mbox(5) .SH "GIT" .sp Part of the \fBgit\fR(1) suite