gpg:跳过“XXBDXX4E”:秘密密钥不可用。 gpg:签名失败:密钥不可用

2023-11-25

我按照这个教程:https://help.github.com/articles/signing-commits-using-gpg/

我尝试在提交时签名,如下所示:https://github.com/spring-guides/tut-spring-boot-oauth2/commit/824f418ab9d04114b14a90f7c19b4b8d6dda67b7

enter image description here

但错误:

C:\Users\Administrator\Desktop\foo\test_gpg>git commit -m "test"
gpg: skipped "DABDD34E": secret key not available
gpg: signing failed: secret key not available
error: gpg failed to sign the data
fatal: failed to write commit object

enter image description here enter image description here enter image description here enter image description here

我的配置:

C:\Users\Administrator\Desktop\foo\test_gpg>git config --list --show-origin
file:"C:\\ProgramData/Git/config"       core.symlinks=false
file:"C:\\ProgramData/Git/config"       core.autocrlf=true
file:"C:\\ProgramData/Git/config"       core.fscache=true
file:"C:\\ProgramData/Git/config"       color.diff=auto
file:"C:\\ProgramData/Git/config"       color.status=auto
file:"C:\\ProgramData/Git/config"       color.branch=auto
file:"C:\\ProgramData/Git/config"       color.interactive=true
file:"C:\\ProgramData/Git/config"       help.format=html
file:"C:\\ProgramData/Git/config"       http.sslcainfo=C:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt
file:"C:\\ProgramData/Git/config"       diff.astextplain.textconv=astextplain
file:"C:\\ProgramData/Git/config"       rebase.autosquash=true
file:"C:\\Program Files\\Git\\mingw64/etc/gitconfig"    credential.helper=manager
file:C:/Users/Administrator/.gitconfig  user.name=donhuvy
file:C:/Users/Administrator/.gitconfig  [email protected]
file:C:/Users/Administrator/.gitconfig  user.signingkey=DABDD34E
file:C:/Users/Administrator/.gitconfig  commit.gpgsign=true
file:C:/Users/Administrator/.gitconfig  use.signingkey=DABDD34E
file:.git/config        core.repositoryformatversion=0
file:.git/config        core.filemode=false
file:.git/config        core.bare=false
file:.git/config        core.logallrefupdates=true
file:.git/config        core.symlinks=false
file:.git/config        core.ignorecase=true
file:.git/config        core.hidedotfiles=dotGitOnly
file:.git/config        remote.origin.url=https://github.com/donhuvy/test_gpg.git
file:.git/config        remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
file:.git/config        branch.master.remote=origin
file:.git/config        branch.master.merge=refs/heads/master
file:.git/config        commit.gpgsign=true

and

C:\Users\Administrator\Desktop\foo\test_gpg>gpg --list-key
C:/Users/Administrator/AppData/Roaming/gnupg/pubring.gpg
--------------------------------------------------------
pub   2048R/DABDD34E 2016-06-10
uid       [ultimate] donhuvy (Do Nhu Vy) <[email protected]>
uid       [ultimate] Do Nhu Vy (Do Nhu Vy) <[email protected]>
sub   2048R/C6B535A2 2016-06-10

(我在 GitHub 上注册了 3 个电子邮件:[email protected], [email protected] and [email protected]) 我到底做错了什么?我如何签署我的承诺?


我也有同样的问题。不幸的是,错误消息并没有指出真正的问题....这是你没有配置git来使用你正在使用的gpg程序,我怀疑是gpg4win。[我只在Win机器上遇到过这个]

git config --global gpg.program "C:/Program Files (x86)/GNU/GnuPG/gpg2.exe"

请运行上面的命令,然后运行下面的命令。

git config user.signingkey DABDD34E

您可能需要重新启动终端;并重新发出您的git commit命令。

希望这可以帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

gpg:跳过“XXBDXX4E”:秘密密钥不可用。 gpg:签名失败:密钥不可用 的相关文章

  • Git 将开发分支与生产版本的主分支合并

    我正在使用 Git 进行代码版本控制 我有一个开发分支 我正在其中进行所有肮脏的开发 每次我向世界发布生产版本时 我都想将其放在我的 master 分支下 问题是 每当我合并开发和 master 时 master 都会收到所有开发历史记录
  • 使用 PIP 从 Github 安装 Python 包

    我已经看到文档表明您可以通过以下方式使用 pip 安装托管 Python 包的 Github sudo pip install e git git github com myuser myproject git egg myproject
  • IntelliJ Git 集成 - git --version 空输出

    我目前正在尝试使用 IntelliJ 2016 2 的 Git 集成 但每当我将其指向可执行文件时 我都会遇到以下问题 这在技术上并不会阻止集成工作 但它确实会导致更新索引等问题 我正在运行 Windows 7 完全全新安装 但我在以前的
  • egit:设置gitignore忽略所有eclipse项目文件

    我在 github 上有一个项目 我想从中删除所有与 eclipse 相关的文件 并允许克隆它的人使用他们想要的任何 ide 这是该项目 https github com vedi0boy Archipelo https github co
  • 在 Xcode 9 上切换分支

    我无法找到使用 Xcode 9 切换分支的菜单项 工作副本菜单似乎已经消失 有任何想法吗 Xcode 9 Xcode 8 Press 2 to open the new Source Control Navigator 右键单击master
  • 具有私有 git 存储库的 Cocoapods

    我想添加到podfile私有git存储库 例如 pod MyLibrary git gt email protected cdn cgi l email protection perfect top library git branch g
  • 目标路径已存在且不是空目录

    我克隆了一个 git 存储库 但不小心弄乱了 所以我重新克隆并显示消息 目标路径已存在且不是空目录 我尝试过删除 Mac 中带有目标路径名称的文件夹 但没有成功 我对编码非常陌生 因此我们将不胜感激 对于根文件夹 以及任何其他文件夹 对于那
  • Azure Devops Pipeline YAML 中的 Git 标记名称

    Summary 如何获取 Azure Devops Pipeline YAML 文件中当前 git 标签的名称 我想做什么 我正在 Azure Devops 中设置构建管道 创建新的 git 标签时会触发管道 然后我想构建 docker 镜
  • Git:如何维护项目的两个分支并仅合并共享数据?

    假设我有一个项目的两个分支 IMClient MacOS 和 IMClient Windows 它们的代码仅 比方说 一个目录 main 有所不同 所有其他目录都包含与系统无关的代码并且可以互换 有些工作人员在 Windows 版本上工作
  • 合并多个 git 存储库

    假设我有一个看起来像这样的设置 phd code phd figures phd thesis 由于历史原因 这些都有自己的 git 存储库 但我想将它们合并为一个 以稍微简化事情 例如 现在我可能会进行两组更改 并且必须执行类似的操作 c
  • 如何将 git-svn 与 svn+ssh url 一起使用

    我喜欢在cygwin中使用git svn clone使用我们公司 svn 存储库的命令 这个的网址是svn ssh svn
  • 仅将单个文件放入 git 子模块/存储库中

    我在 git 源代码存储库中有一个特定文件 其中包含生产设置 密码 我想限制此文件 以便只有制作团队的成员才能看到它 但是 我想控制它的变化 我考虑过在 git 中使用子模块 然后限制对新存储库的访问 然而 git 似乎需要子模块的整个子目
  • 如何设置“阅读文档”以使 Sphinx autodoc 选项发挥作用?

    我的项目不是使用 autodoc 构建的 我遇到了关于我的项目未在 autodoc 中构建的常见问题 https read the docs readthedocs org en latest faq html my project isn
  • 如何将更改提交到另一个预先存在的分支

    我刚刚对一个分支进行了更改 如何将更改提交到另一个分支 我正在尝试使用 git checkout the commmit to the changed branch b the other branch 但是 我认为这不是正确的做法 因为在
  • 名称和电子邮件在 Git 的每用户配置文件中设置,但 Git 仍使用默认生成的名称和电子邮件

    标题已经说了 但我会更彻底地解释一下 我已使用以下命令按照建议配置了用户名和电子邮件 git config global user name git config global user email 我可以通过执行以下操作来验证这是设置的g
  • 如何与其他用户共享 bitbucket 存储库?

    我正在使用 Bit 存储桶 并且我想与一位朋友分享我的存储库 我用的是免费的个人账户 似乎有一个选项可以在位桶中创建团队 但它说它将把我的帐户从个人帐户转换为团队帐户 我不要那个 我如何授予其他用户访问此存储库的权限 有一个共享链接选项 如
  • Git子模块绝对工作树路径配置

    这是我的子模块redmine 仪表板配置文件 子模块配置文件 core repositoryformatversion 0 filemode true bare false logallrefupdates true worktree Us
  • 在 git 中记录前 10 个

    两个问题 如何从头到尾显示 git 中的前 10 个提交 无分行 如何指定提交索引并记录它 显示第二个或第三个 我知道 git 使用父级来链接提交 很容易从头到尾记录提交 喜欢 git log HEAD 10 但我需要从头到尾查询 可以吗
  • 如何将一个文件存储库上传到 Gist,并保留历史记录?

    我的计算机上有一个包含单个文件的 Git 存储库coins py 我如何才能将其作为 Github 上的要点来保存历史 这其实很简单 您可以将现有历史记录移动到 Gist 存储库中 就像将其移动到任何其他存储库中一样 创建要点 只需输入一些
  • 如何使用 git-tfs 清理损坏的历史记录

    我不确定我是如何进入这种状态的 但我的 tfs 默认远程分支中有一些 TFS 中不存在的提交 所以我想摆脱它们 所以我的历史是这样的 A B C D tfs default 但提交 B 和 C 实际上并不是 TFS 中的变更集 因此 当我签

随机推荐

  • git log --since=<日期> 选项 [重复]

    这个问题在这里已经有答案了 我目前正在通过 Pro Git 这本书学习Git 在书中 当讨论不同的选择时git log since
  • `#pragma Once` 是否已进入 C++0x 中?

    标题说明了一切 有 pragma once已标准化为 C 0x 我不知道有哪个编译器不提供它的实现 并且几乎总是具有相同的语义和名称 All pragma指令导致实现以实现定义的方式运行 这在 C 03 和最新的 C 0x 草案 n3225
  • 在 symfony 2 中验证小数

    我使用 Doctrine 将 symfony2 实体映射到表 属性之一是 var decimal price ORM Column name price type decimal nullable false private price W
  • Erlang:RPC 到节点并在该节点上输出

    有没有办法对节点进行 rpc 调用 但将输出显示在该节点上 而不仅仅是在调用节点上 事实上 如果调用节点不显示输出 我不会太担心 虽然我明白我可以使用 rpc call Node erlang display someTerm 这将在 No
  • 从 Pandas 专栏中删除 Twitter 提及

    我有一个数据集 其中包含来自 Twitter 的推文 其中一些也有用户提及 例如 thisisauser 我尝试在进行其他清理过程的同时删除该文本 def clean text row options if options lowercas
  • perl 反引号:使用 bash 而不是 sh

    我注意到 当我在 perl 中使用反引号时 命令是使用 sh 而不是 bash 执行的 这给我带来了一些问题 我怎样才能改变这种行为 以便 perl 将使用 bash 附言 我尝试运行的命令是 paste filename lt cut d
  • 如何在 java 7 中启用 TLSv1.2?

    我正在尝试使用命令 mvn Dhttps protocols TLSv1 TLSv1 1 TLSv1 2 install mvn Dhttps protocols TLSv1 2 install 在具有 java 1 7 的计算机中启用 T
  • 实体框架 - 实体只读属性映射到相关表的列

    我有一个有趣的问题需要解决 但是虽然很常见 但看起来使用实体框架不容易实现 有两个表 Player Id TeamId FirstName LastName Team Id Name IsProfessional 玩家只能属于一支球队 使用
  • R 闪亮中不存在此 Font Awesome 图标(“齿轮”)

    我今天遇到了一个奇怪的情况 我在 R Shiny 上开发一个应用程序几天了 它在我的笔记本电脑上运行 今天我更换了电脑 安装了新的 Windows 当我运行我的应用程序时 它给了我这个错误 This Font Awesome icon ge
  • 将带有默认值的数组作为参数传递给 int main()

    我很难将数组作为参数传递给int main 与默认值 例如 int main int a 效果很好 一样 int main int a 1 Passing int main 数组也能很好地工作 int main int a 3 然而 将这两
  • 如何从字符串确定日期格式?

    这个问题今天已经被问过 但所有者似乎已经删除了它 即使它有 4 票赞成 不过这个问题太有趣了 我决定再次自己发帖 我有一个 Javascript 对象 它有一个带有日期字符串的属性 现在我想为该属性设置一个新的日期时间 但是在不知道其格式的
  • 如何在Android上管理startActivityForResult

    在我的活动中 我通过以下方式从主要活动中调用第二个活动startActivityForResult 在我的第二个活动中 有一些方法可以完成此活动 可能没有结果 但是 只有其中一个方法返回结果 例如 我从主要活动中调用第二个活动 在此活动中
  • Sqlite:如何重置所有数据库表?

    我想要一个调试函数来执行此操作 但我不知道该函数是否已经存在 为我的每个表检查并使用 删除表 将是一件痛苦的事情 帮助表示赞赏 由于数据库只是一个文件 因此您确实可以删除它 如果您想要更自动化的操作 您可以使用以下命令以编程方式完成所有操作
  • 内核如何通知用户空间程序中断发生

    我正在编写一个用户空间程序和一个内核空间设备驱动程序 目标 一旦发生中断 用户空间程序需要快速执行某些操作 我的天真的方法 用户空间程序使用ioctl调用wait event interruptible 内核ISR调用wake up int
  • CJS 和 ES6 模块之间的语法差异

    在 CJS 模块中我会使用export and var plugin require plugin 导出 导入在 ES6 模块中我会使用export and import as plugin from plugin 导出 导入 还有更多语法
  • 如何使用某些 CGContext 函数重置以标识“当前变换矩阵”?

    我正在 CTM 上进行一系列平移和旋转 在某些时候我需要将其重置为身份 然后再进一步进行转换 我找不到任何正确的方法来做到这一点 显然 应该有一个名为 CGContextSetCTM 左右的函数 并且由于效率是关键 所以我不想使用 CGCo
  • 更改 Erlang 中的默认“home”路径以解决 RabbitMQ 启动错误

    我是rabbitmq的新手 也是erlang的新手 我遇到了一个问题 我无法启动rabbitmq 因为 erlang cookie 的 主 位置已更改 我已经运行命令 init get argument home 返回 ok H 这是一个问
  • 如何在 Android Studio 中使用 android.test.mock

    我正在尝试使用模拟上下文在 Android Studio 中对 Android 项目进行单元测试 问题是 包android test 在项目中不可见 我不确定应该向 Gradle 添加什么才能导入它 我试过com android suppo
  • rvm install ruby​​-1.9.3-p286:运行“make -j 9”时出错(OSX:Mountain Lion)

    Running rvm install ruby 1 9 3 p286给我这个错误 Error running make j 9 please read Users epeterson rvm log ruby 1 9 3 p286 mak
  • gpg:跳过“XXBDXX4E”:秘密密钥不可用。 gpg:签名失败:密钥不可用

    我按照这个教程 https help github com articles signing commits using gpg 我尝试在提交时签名 如下所示 https github com spring guides tut sprin