2

ローカル リポジトリをリモート ディレクトリにデプロイしようとしています。このリモート ディレクトリで実行git init --bareし、正しい ssh パスをローカルの git リポジトリ ブランチ (dev という名前) に追加しましたgit remote add server ssh://user@domain.com:2222/path/to/repo

実行する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'

ここで何が起こっているのかわかりません。

4

1 に答える 1

3

git repository failed to traverse parent error」で述べたように、これは浅いクローンが原因である可能性もあります。

ただし、あなたの場合(テストレポ)、最初から再起動するのが最も簡単です。

一般的に、このスレッドには興味深いアドバイスがあります。

1. 「git rev-list --objects」を使用して、何40aaeb204dcがあったかを調べます。

それでもうまくいかない場合:

2.git fsck --fullパックをそのままにして " " を実行します。これにはしばらく時間がかかります。
結果には、欠落しているオブジェクト ( など40aaeb204dc) のリストと、最も重要なそのタイプが含まれます。

howto/recover-corrupted-blob-object.txtに従うと、破損したルース オブジェクトを特定するのに役立ちます。

于 2012-11-09T07:09:39.087 に答える