如何在VS Code中使用git commits签名?

Dim*_*oid 13 visual-studio-code

我们在存储库中使用gpg签名提交但是当我尝试在vscode中提交更改时出现此错误:

gpg: cannot open tty `/dev/tty': No such device or address
error: gpg failed to sign the data
Run Code Online (Sandbox Code Playgroud)

如果我在vscode的终端中执行"git commit",一切正常.所以问题不在于git/gpg/gpg-agent我猜.有没有办法让vscode处理这个?

Lle*_*wey 20

一个拉请求近日被合并,并会在VS代码的下一个版本中提供(2017年8月/ 1.16).或者,它已经在内部人员构建中可用.

可用时,可以通过将以下内容添加到用户或工作区设置(文件>首选项>设置)来启用它

git.enableCommitSigning: true
Run Code Online (Sandbox Code Playgroud)

先决条件:使用git设置签名提交.说明可以在这里找到 - https://help.github.com/articles/signing-commits-using-gpg/

要在默认情况下为存储库设置所有提交,请在Git版本2.0.0及更高版本中运行git config commit.gpgsign true.要将计算机上任何本地存储库中的所有提交设置为默认签名,请运行git config --global commit.gpgsign true.

要存储GPG密钥密码,以便每次签署提交时都不必输入密码,我们建议使用以下工具:

对于Mac用户,GPG Suite允许您将GPG密钥密码存储在Mac OS Keychain中.对于Windows用户,Gpg4win与其他Windows工具集成.您也可以手动配置gpg-agent以保存GPG密钥密码,但这不会与ssh-agent等Mac OS Keychain集成,需要更多设置.

  • 您知道如何使用受密码保护的 GPG 密钥使其在 VS Code 1.28.1 版上运行吗? (2认同)