在 Windows 上通过 SSH 进行 Git 推送不起作用

2024-03-29

我有一个谜要问你们!

在这个问题上苦苦挣扎了半天之后,我需要你的经验来启发我在 Windows 上使用 msysgit 来使用 git。

上下文:

  • 视窗8
  • msysgit, 最新版本
  • Using SSH密钥认证
  • Pagent使用 valid 处理 SSH 密钥身份验证.ppkkey(使用PuTTY登录即可)
  • The 裸存储库是健康的,权限确定。使用 git linux 客户端(在本地 Ubuntu VM 上使用相同的 SSH 密钥进行测试)

Env:

  • GIT_SSH=D:\path\to\PuTTY\plink.exe
  • HOME=C:\路径\到\我自己

问题:

Short:

error: insufficient permission for adding an object to repository database ./obj

Long:

D:\path\to>git clone ssh://[email protected] /cdn-cgi/l/email-protection/opt/git/project
Cloning into 'project'...
Unable to use key file "D:\path\to\puttykey.ppk" (unable to open file)
remote: Counting objects: 3, done.
remote: Total 3 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (3/3), done.
Checking connectivity... done.

D:\path\to>cd project

...me creating some random file...

D:\path\to\project>git add test

D:\path\to\project>git commit -m "Init"
[master 118a94e] Init
 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 test

D:\path\to\project>git push origin master
Unable to use key file "D:\path\to\puttykey.ppk" (unable to open file)
Counting objects: 2, done.
Writing objects: 100% (2/2), 293 bytes | 0 bytes/s, done.
Total 2 (delta 1), reused 2 (delta 1)
error: insufficient permission for adding an object to repository database ./obj

fatal: failed to write object
error: unpack failed: unpack-objects abnormal exit
To ssh://[email protected] /cdn-cgi/l/email-protection/opt/git/project
 ! [remote rejected] master -> master (n/a (unpacker error))
error: failed to push some refs to 'ssh://[email protected] /cdn-cgi/l/email-protection/opt/git/project'

我真诚地接受任何形式的帮助,提前致谢..!

顺便说一下,这到底是怎么回事Unable to use key file "D:\path\to\puttykey.ppk"??


大多数答案,如“推送到 GitHub 时出错 - 权限不足,无法将对象添加到存储库数据库 https://stackoverflow.com/q/1918524/6309”提到了有关文件夹访问权限的问题。
这转化为 chmod...这并不真正适用于 Windows。

But 这个答案 https://stackoverflow.com/a/15319683/6309提到了same当您的 ssh url 引用您的 ssh 中的条目时出现错误消息%HOME%/.ssh/config文件,该文件用于另一个公共/私有 ssh 密钥,而不是您要使用的密钥。

确保您的网址使用正确的条目,正如我在“使用 ssh 访问存储库 https://stackoverflow.com/a/22579676/6309"

Host aKey
    User git
    HostName yourHost
    Port 22
    IdentityFile ~/.ssh/<[email protected] /cdn-cgi/l/email-protection>.key

在这里,OP blint https://stackoverflow.com/users/2219133/blint adds 在评论中 https://stackoverflow.com/questions/23035302/git-push-over-ssh-on-windows-wont-work/23035735?noredirect=1#comment35193283_23035735:

消息Unable to use key file "D:\path\to\puttykey.ppk"因此是由于受控 PuTTY 配置文件中定义的路径错误.

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

在 Windows 上通过 SSH 进行 Git 推送不起作用 的相关文章

随机推荐

  • Oracle PIVOT,两次?

    我一直在尝试在 Oracle 11g 中不再使用 DECODE 来透视行 其中有一个方便的 PIVOT 函数 但我可能发现了一个限制 我试图为基表中的每个值返回 2 列 就像是 SELECT somethingId splitId1 spl
  • 将“var”传递给另一个方法

    我可能完全错过了这里的重点 但是 如何将 var 传递给另一个方法 我正在使用 linq 将 XML 加载到可枚举对象列表中 我有不同的对象类型 具有不同的字段 但无论使用哪个对象 我的过程的最后一步都是相同的 XNamespace xml
  • 单例中 getter 和 setter 的线程安全

    我在 Swift 3 中创建了一个简单的单例 class MySingleton private var myName String private init static let shared MySingleton func setNa
  • 在 VSTS Powershell 内联脚本任务中运行 drop SQL DB 时找不到类型 [Microsoft.SqlServer.Management.Smo.Server]

    在我的 VSTS 版本中 当我运行以下内联 Powershell 版本 5 1 脚本时 srv new Object Microsoft SqlServer Management Smo Server db New Object Micro
  • 如何以 Angular(v2 及以上)反应形式查找无效控件

    我在 Angular 中有一个反应形式 如下所示 this AddCustomerForm this formBuilder group Firstname Validators required Lastname Validators r
  • 协变类型 T 发生在不变位置

    我正在 Scala 中迈出第一步 我想让以下代码起作用 trait Gene T val gene Array T 编译器给出的错误是 covariant type T occurs in invariant position in typ
  • 在 React 中,如何将参数从子组件传递到父组件?

    在 React JS 中 我无法将值从子组件传递到父组件 这个问题是上一个问题的后续问题在 React JS 中 我如何告诉父组件子组件发生了什么事 https stackoverflow com questions 58403770 in
  • 访问 firebase firestore 数据库仪表板是否会被视为读取操作?

    我现在正处于该项目的开发阶段 目前该项目仅使用一个 Android 应用程序作为前端 Android 使用限制和分页进行查询 但阅读的文档总数远远超出了预期 我试图弄清楚这一点 为什么即使用户只有一个 我 阅读的文档数量却如此之大 如果阅读
  • 带红色圆圈的 Intellij Idea 文件

    我的 Intellij Idea 在 Project Explorer 中的文件名都有一个红色小圆圈 上面写着 J 那代表什么 IntelliJ 识别出这是一个 java 文件 但它没有标记为项目源的一部分 检查您的项目是否遵循 Maven
  • 如何防止在 Vim 中遍历跳转列表时离开当前缓冲区?

    I frequently have several buffers open in my Vim session This means that my jump list stores locations from several buff
  • 使用 Jest 模拟基于承诺的请求

    我正在尝试使用 Jest 对函数进行单元测试 但在处理 jest 模拟模块时遇到了一些麻烦 相当于 Nodejs 世界中的 rewire 或 proxyquire 我实际上正在尝试测试是否已使用一些参数在模拟模块上调用了间谍 这是我要测试的
  • 在 ASP.NET MVC 的 Windsor 配置中,控制器的生活方式是否应该始终是瞬态的?

    我遇到了一个问题 我认为 Html DropDownList 会在我第一次提交表单时回发所选值 但每个后续回发只会发布初始回发中的数据 因此 我将生活方式 瞬态 添加到为温莎城堡配置控制器的组件元素中 这解决了问题 但当然使回发需要更长的时
  • SQLAlchemy:“NoneType”对象没有属性“drivername”

    我正在尝试将我的 Flask 应用程序连接到本地 MySQL 数据库进行测试 我创建了一个 Flask 对象和一个类来表示成功连接后创建的示例表 这些是我的项目的本地环境变量 env LOCAL MYSQL URL mysql Userna
  • 如何从文件中提取多行的电子邮件标题

    我正在尝试在 Linux 上使用 sed 从电子邮件文件中提取 To 标头 问题是 To 标头可能位于多行上 e g To email protected cdn cgi l email protection email protected
  • 在Excel中使用VBA查找活动单元格的列标题名称

    我有一个从数据列表创建的表 如何找到每列的标题文本 当我选择活动单元格的标题时 它会高亮为橙色 但我想使用 Visual Basic 检索该值 我能够找到 Excel 工作表的地址 但我需要表格的列标题 Private Sub Worksh
  • Hibernate 验证器验证约束 if @Constraint(validated by = {})

    我有一个 Spring Web 应用程序 它使用 hibernate 验证器进行验证 我有位于不同项目中的约束注释 我需要在我的 Spring 项目中拥有针对这些约束的验证器 因为我需要一些服务来执行验证 所以情况是 我无法将约束验证器放在
  • 使用R识别PDF表格

    我正在尝试从一些 pdf 报告内的表格中提取数据 我看过一些使用 pdftools 和类似软件包的示例 我成功地获取了文本 但是 我只想提取表格 有没有办法使用 R 来识别和提取表格 很好的问题 我最近也在想同样的事情 谢谢 我做到了 与制
  • HP (Mercury) 质量中心的高质量替代品? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何从嵌套列中提取 json 到数据帧

    我正在从 TD Ameritrade API 中提取股票数据 并且希望将其存储在 DataFrame 中 从 API 中 我得到一个嵌套的 JSON 对象 当我将其放入数据框中时 我得到 4 列 索引 蜡烛 空 符号 然而 蜡烛内部是一个字
  • 在 Windows 上通过 SSH 进行 Git 推送不起作用

    我有一个谜要问你们 在这个问题上苦苦挣扎了半天之后 我需要你的经验来启发我在 Windows 上使用 msysgit 来使用 git 上下文 视窗8 msysgit 最新版本 Using SSH密钥认证 Pagent使用 valid 处理