設定與配置
取得與建立專案
基本快照
分支與合併
分享與更新專案
檢查與比較
修補
除錯
電子郵件
外部系統
伺服器管理
指南
管理
底層命令
- 2.43.2 → 2.47.0 沒有變更
-
2.43.1
02/09/24
-
2.43.0
11/20/23
- 2.38.1 → 2.42.3 沒有變更
-
2.38.0
10/02/22
- 2.29.1 → 2.37.7 沒有變更
-
2.29.0
10/19/20
- 2.20.1 → 2.28.1 沒有變更
-
2.20.0
12/09/18
- 2.19.1 → 2.19.6 沒有變更
-
2.19.0
09/10/18
- 2.18.1 → 2.18.5 沒有變更
-
2.18.0
06/21/18
- 2.4.12 → 2.17.6 沒有變更
-
2.3.10
09/28/15
-
2.2.3
09/04/15
- 2.1.4 沒有變更
-
2.0.5
12/17/14
描述
此命令將使用 git format-patch 產生的郵件箱上傳到 IMAP 草稿資料夾。這允許在使用無法直接讀取郵件箱檔案的郵件用戶端時,像發送其他電子郵件一樣發送修補程式。此命令也適用於任何一般郵件箱,其中電子郵件的欄位依序為「From」、「Date」和「Subject」。
典型的用法如下
git format-patch --signoff --stdout --attach origin | git imap-send
配置
若要使用此工具,必須將 imap.folder
和 imap.tunnel
或 imap.host
設定為適當的值。
此部分中此行以上的所有內容不包含在 git-config[1] 文件中。接下來的內容與其中找到的內容相同
- imap.folder
-
要將郵件放入的資料夾,通常是草稿資料夾。例如:「INBOX.Drafts」、「INBOX/Drafts」或「[Gmail]/Drafts」。為必填項。
- imap.tunnel
-
用於建立連線到 IMAP 伺服器的通道的命令,命令將通過該通道傳輸,而不是使用直接網路連線到伺服器。當未設定 imap.host 時為必填項。
- imap.host
-
識別伺服器的 URL。對於非安全連線使用
imap://
前綴,對於安全連線使用imaps://
前綴。當設定 imap.tunnel 時會被忽略,但否則為必填項。 - imap.user
-
登入伺服器時要使用的使用者名稱。
- imap.pass
-
登入伺服器時要使用的密碼。
- imap.port
-
連線到伺服器的整數連接埠號碼。imap:// 主機的預設值為 143,imaps:// 主機的預設值為 993。當設定 imap.tunnel 時會被忽略。
- imap.sslverify
-
一個布林值,用於啟用/停用 SSL/TLS 連線所使用的伺服器憑證驗證。預設值為
true
。當設定 imap.tunnel 時會被忽略。 - imap.preformattedHTML
-
一個布林值,用於啟用/停用發送修補程式時使用 html 編碼。html 編碼的修補程式將以 <pre> 包圍,且內容類型為 text/html。諷刺的是,啟用此選項會導致 Thunderbird 將修補程式作為 plain/text、format=fixed 電子郵件發送。預設值為
false
。 - imap.authMethod
-
指定使用 IMAP 伺服器進行驗證的驗證方法。如果 Git 的建置有設定 NO_CURL 選項,或者您的 curl 版本早於 7.34.0,或者您使用
--no-curl
選項執行 git-imap-send,則唯一支援的方法是 CRAM-MD5。如果未設定此選項,則 git imap-send 會使用基本的 IMAP 純文字 LOGIN 命令。
範例
使用通道模式
[imap] folder = "INBOX.Drafts" tunnel = "ssh -q -C user@example.com /usr/bin/imapd ./Maildir 2> /dev/null"
使用直接模式
[imap] folder = "INBOX.Drafts" host = imap://imap.example.com user = bob pass = p4ssw0rd
使用 SSL 的直接模式
[imap] folder = "INBOX.Drafts" host = imaps://imap.example.com user = bob pass = p4ssw0rd port = 123 ; sslVerify = false
注意
|
當您懷疑連線問題的原因是您在嘗試設定(或已設定)的私人伺服器 example.com 上使用的憑證可能未正確驗證時,您可能需要在疑難排解時使用 sslVerify=false 。 |
使用 Gmail 的 IMAP 介面
[imap] folder = "[Gmail]/Drafts" host = imaps://imap.gmail.com user = user@gmail.com port = 993
注意
|
如果您收到「資料夾不存在」的錯誤,您可能需要改用:folder = "[Google Mail]/Drafts" 。 |
注意
|
如果您的 Gmail 帳戶設定為其他語言而非英文,「草稿」資料夾的名稱將會是本地化的。 |
一旦提交準備好發送,請執行以下命令
$ git format-patch --cover-letter -M --stdout origin/master | git imap-send
請務必在電子郵件用戶端中停用換行(無論如何,Gmail 的網頁介面都會換行,因此您需要使用真正的 IMAP 用戶端)。
注意
您仍然有責任確保您的電子郵件程式發送的電子郵件符合您專案的標準。許多專案不希望修補程式以附件的形式發送。某些郵件代理程式會以使其失敗的方式轉換修補程式(例如,換行、將其作為 format=flowed 發送)。如果您不檢查這一點,您將會收到憤怒的斥責。
眾所周知,Thunderbird 特別容易出問題。Thunderbird 使用者可能希望訪問此網頁以取得更多資訊:https://kb.mozillazine.org/Plain_text_e-mail_-_Thunderbird#Completely_plain_email
另請參閱
git-format-patch[1]、git-send-email[1]、mbox(5)
GIT
屬於 git[1] 套件的一部分