如何防止 Git 使用username@pc名称形式的电子邮件而不是空电子邮件



每当我尝试使用 GIT 时,它都会自动用大量私人数据(如用户名、电子邮件和/或 PC 名称(丰富我的提交。

如何正确配置 GIT,使其永远不会自动泄露我的私人数据?

我已经表演过了

git config --global user.name Robert
git config --global user.email ""
但是,我的

提交/推送仍然包含我的帐户和计算机名称,我认为这是私人数据。

使 GIT 不将我的个人信息发布到存储库/互联网上的必要条件是什么?

运行

git config --global user.email ""

清除用户级配置文件的user.email字段,这将导致 Git 假设您尚未设置电子邮件地址(当然,假设存储库级配置文件中未指定电子邮件地址(。

作为对策,Git 将生成一个表单为 username@pc-name 的电子邮件地址(其中pc-name包括名称和 FQDN(,并将该电子邮件烘焙到您的提交中:

$ git log -1
commit 9cd00b7ed6206086bf332e0481092590d07626d5
Author: jubobs <jubobs@jubobs-MacBook-Pro.local>
Date:   Thu Dec 18 16:23:19 2014 +0000

但是,可以诱骗 Git 使用空电子邮件地址;你只需要运行以下命令(使用 Git 2.1.3 测试(:

git config --global user.email "<>"

然后,Git 将不会使用上面提到的自动生成的电子邮件地址:

$ git log -1
commit 0d0bb289b293ec020b607021bbd886be5107bc7f
Author: Jubobs <>
Date:   Thu Dec 18 16:25:14 2014 +0000

相关: 没有电子邮件的 Git 提交

如果 GIT 存储库属于指定无效电子邮件地址的 GitHub 项目,则不建议这样做。相反,GitHub 指定了以下替代方案(引用自 GitHub 帮助(:

如果您想将电子邮件地址保密,请将 Git 配置电子邮件设置为 username@users.noreply.github.com,将用户名替换为您的 GitHub 用户名。

注意:如果您在 2017 年 7 月 18 日之后创建了 GitHub 帐户,则 GitHub 提供的无回复电子邮件地址是一个七位数的 ID 号,并且 您的用户名为 ID+username@users.noreply.github.com。如果 您在 2017 年 7 月 18 日之前创建了您的 GitHub 帐户,您的 GitHub 提供的无回复电子邮件地址是您的用户名,格式为 username@users.noreply.github.com。您可以获得基于 ID 的 GitHub 提供的无回复电子邮件地址,方法是选择(或取消选择( 并重新选择(在您的电子邮件设置中保持我的电子邮件地址的私密性。

最新更新