为什么在SourceTree中禁用了GnuPG-sign复选框?

时间:2014-11-02 08:16:56

标签: git gnupg atlassian-sourcetree

Example screenshot

使用Mac OS X Yosemite(10.10),我无法在SourceTree中激活GnuPG签名提交,因为复选框已禁用。如何启用提交签名?

3 个答案:

答案 0 :(得分:28)

您可能无法在正确的bin中指向GPG程序设置(在SourceTree中找到 - > Preferences - > Advanced)。如果您在OS X上使用GPGTools,它应该是/usr/local/MacGPG2/binTo navigate to the /usr/bin directory in the Open File dialog,点击 shift + 命令 + g

SourceTree setting

答案 1 :(得分:5)

从SourceTree版本1.8.1开始,如果在SourceTree启动时没有GPG密钥,该复选框也将被禁用。在SourceTree仍在运行时创建您的第一个GPG密钥不会有帮助。您需要重新启动SourceTree才能注意到您现在拥有GPG密钥。

参考:https://jira.atlassian.com/browse/SRCTREE-1835

答案 2 :(得分:1)

虽然科技与平的答案似乎已经解决了BJ Myers的问题,但是还有另一个可能的原因,即尽管纠正了这个设置,该选项仍然是灰色的。

如果您的密钥环已存在一段时间(在我的情况下接近20年),很可能是某些碎片堆积在信任数据库的一个角落或另一个角落。棘手的一点是,在大多数情况下,这并没有以明显的方式显示,即您仍然可以签名,验证,加密和解密。它只是偶尔出现的虚假keyid_from_fingerprint: no pubkeypublic key of ultimately trusted key 00000000 not found(通常在使用某些密钥环管理前端时)。

这种trustdb的不一致性阻止了SourceTree在我的情况下启用了提交签名选项。

解决方案很简单;只需按照Spike's instructions for weeding out 00000000 keys from the trustdb。 Spike谈到一个00000000条目,但在我的情况下有几个。只需将它们全部删除。花费不到5分钟,就像一个魅力。