背景:周末在家,因工作需要给社区发邮件,但在 mac上配置 git send-email时遇到了很多问题,折腾了两个半小时才搞定,值得记录一下。

在公司内网给社区发邮件时,只需要在所用的 Linux服务器上配置好 git send-email的相关信息,就能顺利发出去了,即使群发也可以。但回家后,由于邮件服务器的安全限制,配置好 git send-email后还是不能发出去。

在网上搜了一下,有人说需要使用 msmtp客户端来发邮件,于是尝试了一下,但按照网上给出的配置教程发现还是不行,折腾了一番,终于成功了。下面介绍几个关键点。

  1. 首先,需要在 mac上安装 msmtp软件,命令如下:
$ brew install msmtp

安装好后,可以检查一下 msmtp能否正常工作,以及邮件服务器是否正常,命令如下:

$ /opt/homebrew/bin/msmtp --host=mail.xxxx.cn --serverinfo
SMTP server at mail.xxxxxx.cn (mail.xxxxxx.cn [222.222.222.222]), port 25:xxxxxx.cn Anti-spam GT for Coremail System (.xxxxxx.cn[20191106])
Capabilities:PIPELINING:Support for command grouping for faster transmissionSTARTTLS:Support for TLS encryption via the STARTTLS commandAUTH:Supported authentication methods:PLAIN LOGIN
This server might advertise more or other capabilities when TLS is active.
  1. 使用 git config配置 sendemail相关信息

使用以下命令配置 git 中 sendemail 相关的配置信息:

$ git config --local user.name "BB AA"
$ git config --local user.email aabb@xxxxxx.cn$ git config --local format.signoff true
$ git config --local log.date local$ git config --local sendemail.smtpserver mail.xxxxxx.cn
$ git config --local sendemail.smtpserverport 25
$ git config --local sendemail.smtpencryption starttls$ git config --local sendemail.smtpuser aabb@xxxxxx.cn
$ git config --local sendemail.smtppas 邮箱密码$ git config --local sendemail.suppresscc self
$ git config --local sendemail.confirm auto
$ git config --local sendemail.annotate no

上面最后一个配置项 非常关键:一定要配置为 no,即:
git config --local sendemail.annotate no

  1. 编辑 msmtp配置文件

创建 ~/.msmtprc文件,msmtp默认读取该配置文件里的内容,因此需要填写以下信息:

# Set default values for all accounts:
defaults
auth            plain
tls             off
tls_starttls on
#tls_trust_file  /etc/ssl/certs/ca-certificates.crt
logfile         ~/.msmtp.log#Gmail Account:
account   aabb
host   mail.xxxxxx.cn
port   25
from   aabb@xxxxxx.cn
user   aabb@xxxxxx.cn
password   your_passwd# Set a default account:
account default : aabb
  1. 设置 ~/.msmtprc文件的访问权限

因为上述配置文件中存在明文密码,按照 msmtp的要求需要对配置文件设置访问权限,命令如下:

$ chmod 0600 ~/.msmtprc
  1. 发送邮件

将上面的内容全部配置好后,如果没有出现什么错误,就可以直接发邮件了,命令如下:

$ git send-email  --to name@xxxx.cn  ./0000-xxxx.patch

mac 上配置 git send-email相关推荐

  1. 怎么在idea上配置Git

    文章目录 怎么在idea上配置git 一.概述 二.配置git 1.Git安装之后需要进行一些基本信息设置 三.idea配置git 怎么在idea上配置git 一.概述 这里不详细说明关于git怎么安 ...

  2. (mac)IDEA配置git

    git软件:本地仓库 GitHub网站:远程仓库 代码首先提交到本地仓库(git)[自己使用],再推送到远程仓库(github)[大家一起使用] 1.   mac安装git 首先安装git,注册git ...

  3. mac上使用git管理代码

    一.安装Git MAC 上安装Git主要有两种方式 首先查看电脑是否安装Git,终端输入: git 安装过则会输出: WMBdeMacBook-Pro:~ WENBO$ git usage: git ...

  4. mac命令行配置代理服务器_如何在Mac上配置代理服务器

    mac命令行配置代理服务器 When you configure a proxy server on your Mac, applications will send their network tr ...

  5. 如何在mac上配置Apache服务器

    如何在mac上配置Apache服务器 1. 打开终端,开启Apache: //开启apache:  sudo apachectl start //重启apache:  sudo apachectl r ...

  6. mac 配置android home,mac上配置Android环境变量的方法

    1.AndroidSDK路径查看 (1)AndroidStudio: 菜单栏AndroidStudio > Preferences > Appearences&Behavior & ...

  7. Cocos2d-js-v3.2 在 mac 上配置环境以及编译到 Andorid 的注意事项(转)

    转自:http://blog.csdn.net/song_hui_xiang/article/details/42921537 准备工作: 下载cocos2d-js引擎,版本v3.2,要做的第一件事就 ...

  8. 使用 Karabiner 在 Mac 上配置非苹果键盘

    偶然看到即刻上推送的一篇叫程序员的键盘使用指南的文章,记录一下自己的配置过程,大家也可以直接去看原文,分析的非常好. 首先需要下载一款名为Karabiner的软件. 调换win键和alt键 因为mac ...

  9. mac上配置SVN版本回退

    昨晚配置到凌晨2点半多; 出现的问题: mac自带的svn版本太高,公司用的1.8,mac的是1.9.7; 我想把mac的svn版本回退; 使用svn -update -r 版本号,未果; 使用bre ...

最新文章

  1. RUBY,玩玩~~~
  2. Tomcat内存溢出(java.lang.OutOfMemoryError: PermGen space)的解决办法
  3. 百练OJ:2714:求平均年龄
  4. 深度图压缩之-高低8位拆分保存
  5. springboot手动提交kafka offset
  6. javascript event
  7. Java笔记-Java通过JNI调用Linux上so文件
  8. 标签页添加点击事件和拖拽事件
  9. ls命令 文件和目录属性
  10. webpack打包优化_如何提升 Webpack 打包速度
  11. 云锵基金 2019 年 02 月简报
  12. 分金币 (UVA 11300)
  13. 苏州软件企业如何办理自产软件产品增值税即征即退
  14. 使用Java实现登陆WebQQ(带源码)
  15. 别再用QQ的破数字邮箱了,你其实还有注册姓名全拼微软邮箱的机会
  16. 15.4.1 使用CREATE OR REPLACE VIEW语句修改视图结构
  17. word另存为html行距,word文档如何设置行间距
  18. Mac 操作系统版本简史,让我们回到过去
  19. andriod studio 运行项目时没有NDK(Android Studio如何更改JDK和SDK或者DNK的路径)
  20. 在office2010的情况下安装xcelsius2008的方法收集

热门文章

  1. OCR 上git上star比较多的项目
  2. 11gR2数据库发现aler log中有报错:ORA-27090 async io
  3. dsge模型难做吗_DSGE模型到底有用吗?
  4. 解决word2013图片不能替换
  5. 【SVM回归预测】基于matlab粒子群算法优化SVM回归预测【含Matlab源码 1424期】
  6. https://blog.csdn.net/XTY00/article/details/101689534
  7. 梅科尔工作室-李柯增-鸿蒙笔记3
  8. 处理电子邮件的.NET控件MailBee.NET Objects免费下载及使用说明
  9. matlab清除axes,Matlab axes的使用
  10. C++ 静态成员变量