为什么SourceTree会查找GPG密钥,而我没有配置签名?

3

我在我的Mac上下载了sourcetree应用程序,并将本地git代码库添加到其中。每当我尝试存储或提交内容时,sourcetree会抛出与gpg相关的错误。以下是一个示例错误:

git -c diff.mnemonicprefix=false -c core.quotepath=false -c credential.helper=sourcetree stash save test-stash 
/Applications/SourceTree.app/Contents/Resources/bin/gpg: line 2: gpg2: command not found
error: gpg failed to sign the data
Cannot save the current index state
Completed with errors, see above

我无法找出这个错误的原因。就我所记得的,我没有为项目或sourcetree应用程序配置任何类型的签名。

如果您能帮助我解决这个问题,那将是非常有帮助的。

2个回答

5

即使我尝试使用命令行提交,它也会要求gpg密钥。

在互联网上进行了更多搜索后,我找到了根本原因。这是由于其中一个点文件在~/.gitconfig中设置了全局配置以将提交签名为true。因此,我使用以下命令将配置改回false。

$ git config --global commit.gpgsign false

哎呀!问题现在已经解决了...


0

经过几次尝试,发现按照下面的指示有所帮助: https://confluence.atlassian.com/sourcetreekb/setup-gpg-to-sign-commits-within-sourcetree-765397791.html

问题在于全新的El Capitan和Source Tree安装中似乎没有gpg二进制文件。

上述文章介绍了下载Mac GPG工具并进行设置的步骤。

关键是要配置SourceTree明确地对提交进行签名,否则它会尝试使用系统git偏好设置,这会导致另一个问题,如此处所述:https://confluence.atlassian.com/sourcetreekb/sourcetree-commits-fail-when-using-git-signed-commits-794199810.html


谢谢回答,@HanSooloo。但是我的问题更多是关于“为什么首先要求使用gpg?”我没有为我的git项目进行配置,也没有为source tree进行配置。那为什么会要求使用gpg呢?经过两天的在互联网上进一步搜索,我找到了答案。 - Goje87

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接