【问题标题】:Why is my git push to HostGator shared hosting failing?为什么我的 git push 到 HostGator 共享主机失败?
【发布时间】:2012-10-29 09:35:23
【问题描述】:

我正在尝试将我的本地存储库部署到远程目录。我在这个远程目录中运行了git init --bare,并使用git remote add server ssh://user@domain.com:2222/path/to/repo将正确的ssh路径添加到我的本地git repo分支(名为dev)。

当我运行git push server dev 时,我得到以下输出:

Counting objects: 44, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (37/37), done.
Writing objects: 100% (44/44), 89.58 KiB, done.
Total 44 (delta 2), reused 27 (delta 2)
error: Could not read 551dd5c5d67e3b2da4074d8f15a59a324a063a03
fatal: Failed to traverse parents of commit 0615b940c3247e3547de1379ab09a4a6bb614252
error: Could not read 551dd5c5d67e3b2da4074d8f15a59a324a063a03
fatal: Failed to traverse parents of commit 0615b940c3247e3547de1379ab09a4a6bb614252
To ssh://user@domain.com:2222/path/to/repo
 ! [remote rejected] dev -> master (missing necessary objects)
error: failed to push some refs to 'ssh://user@domain.com:2222/path/to/repo'

我不确定这里发生了什么。

【问题讨论】:

  • git fsck 对您的本地存储库有何评价?
  • 谢谢,我还在学习 git 的基础知识。我有悬空提交,我相信这是导致问题的原因。这对我来说是一个新的 repo,所以我只是删除了它并从头开始创建了一个新的 repo 和 dev 分支。
  • 悬空提交不会有问题,它们只是未引用的提交——稍后会清理的垃圾。值得关注的是,如果您的一个提交引用了一个不存在的父提交。
  • 我不确定这会如何发生。然而,我正在玩这个 repo 学习 git 的基础知识,所以我绝对有可能删除了父提交或类似性质的东西。

标签: git shared-hosting git-push


【解决方案1】:

正如“git repository failed to traverse parent error”中提到的,这也可能是由浅克隆引起的。

在您的情况下(测试存储库),从头开始重新启动是最简单的。

一般来说,你在this thread有一些有趣的建议:

1。使用“git rev-list --objects”找出40aaeb204dc是什么。

如果这不起作用:

2。运行“git fsck --full”,包完好无损。这需要一段时间。
结果将包括丢失对象的列表(如40aaeb204dc),最重要的是,它们的类型。

关注howto/recover-corrupted-blob-object.txt 将有助于识别损坏的松散对象。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-07-05
    • 1970-01-01
    • 1970-01-01
    • 2016-02-02
    • 2023-03-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多