visual-studio-code - 带有 ubuntu + wsl 2 的 vscode 永远不会提示输入 gpg 密码,即使在配置之后只是“无法写入提交数据”
问题描述
我试图让 vscode 在尝试提交时提示输入密码,就像它在 Windows 中所做的那样,或者至少使必须输入密码之间的时间更长。
我在今天安装的 ubuntu + WSL 2 上使用最新版本。
如果我按如下方式运行测试,GPG 在 CLI 中工作:
echo "test" | gpg --clearsign
我被提示输入密码,一切都很好。然后我就可以暂时在 vscode 中签署提交。
至少作为一种解决方法,是否可以选择延长输入密码之间的时间?
编辑:
每次重新启动计算机时,我也必须输入:
export GPG_TTY=$(tty)
否则上述解决方法将不起作用。试图解决这个问题真是太疯狂了,可能至少花了一整天但没有用。
解决方案
在您的~/.gnupg/gpg-agent.conf
文件中,添加以下内容:
default-cache-ttl 28800
max-cache-ttl 28800
您还可以将以下内容添加到您的~/.bashrc
,这样您就不必每次都手动输入:
export GPG_TTY=$TTY
echo "test" | gpg --clearsign > /dev/null 2>&1
这会在启动时提示我输入密码,并且应该缓存 8 小时。该> /dev/null 2>&1
位隐藏输出。目前,这是我正在使用的解决方法——虽然不理想但可以忍受。
推荐阅读
- python - Automa 在打印中安装错误 - Python
- python-3.x - 线程的奇怪行为
- codenameone - Codenameone BrowserComponent.setProperty 给出 NullPointerException
- apache-camel - Liquibase 在 Camel 启动后应用补丁,导致错误
- scala - Tableau Extract API 返回“服务器没有回叫我们”
- sql - SQL 将两个 SUM 查询的结果用于一个查询
- linux - 如何在 Linux 上从 STM32WB55 Nucleo Pack 闪存 MB1355C 和/或 MB1293C?
- sql-server - 使用 For 循环容器 (SSIS) 限制行加载
- c# - dotnet test 命令在 nUnit 中找不到要执行的任何测试
- angular - 材料芯片文本被包裹而不是扩展芯片