每当我尝试提交文件时,都会收到以下错误消息:
gpg:无法打开`/ dev / tty':设备未配置
错误:gpg无法签署数据
致命:未能写入提交对象
糟糕!这是因为我为git启用了GPG签名。
是否可以将GPG签名与Xcode存储库一起使用?
这不是一个大问题,因为它很容易禁用GPG签名(git config commit.gpgsign true
),但这是一个相当不错的识别标准。
答案 0 :(得分:3)
这里的问题是默认的pinentry(密码对话框)基于终端,并且当您使用Xcode时,未在连接终端的情况下调用Git。因此,GnuPG无法提示您输入密码。
处理此问题的最简单方法是使用brew install pinentry-mac
安装Mac pinentry。然后,您可以用~/.gnupg/gpg-agent.conf
更新pinentry-program /usr/local/bin/pinentry-mac
。您可能需要终止所有正在运行的gpg-agent
进程,以便它们采用新的配置。
GitHub Gist中提供了有关如何执行此操作的相当详尽的文档。
答案 1 :(得分:1)
是否可以将GPG签名与Xcode存储库一起使用?
不,Xcode不支持此功能。
但是," Xcode存储库"只是一个普通的git存储库。如果您确实想要使用GPG签名,请在命令提示符下执行所有提交,合并等。