Skip to content
Snippets Groups Projects
git-imap-send.txt 3.48 KiB
Newer Older
  • Learn to ignore specific revisions
  • Jean-Noël Avila's avatar
    Jean-Noël Avila committed
    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
    
    Jean-Noël Avila's avatar
    Jean-Noël Avila committed
    to appropriate values.
    
    
    Jean-Noël Avila's avatar
    Jean-Noël Avila committed
    include::includes/cmd-config-section-rest.txt[]
    
    
    include::config/imap.txt[]
    
    Jean-Noël Avila's avatar
    Jean-Noël Avila committed
    
    
    Jean-Noël Avila's avatar
    Jean-Noël Avila committed
    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
    
    Jean-Noël Avila's avatar
    Jean-Noël Avila committed
    .........................
    
    
    
    [NOTE]
    You may want to use `sslVerify=false`
    while troubleshooting, if you suspect that the reason you are
    having trouble connecting is because the certificate you use at
    the private server `example.com` you are trying to set up (or
    have set up) may not be verified correctly.
    
    Using Gmail's IMAP interface:
    
    Jean-Noël Avila's avatar
    Jean-Noël Avila committed
    
    ---------
    [imap]
    	folder = "[Gmail]/Drafts"
    	host = imaps://imap.gmail.com
    	user = user@gmail.com
    	port = 993
    ---------
    
    
    [NOTE]
    You might need to instead use: `folder = "[Google Mail]/Drafts"` if you get an error
    
    Jean-Noël Avila's avatar
    Jean-Noël Avila committed
    that the "Folder doesn't exist".
    
    
    [NOTE]
    If your Gmail account is set to another language than English, the name of the "Drafts"
    folder will be localized.
    
    
    Jean-Noël Avila's avatar
    Jean-Noël Avila committed
    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
    
    Jean-Noël Avila's avatar
    Jean-Noël Avila committed
    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