私は、ハードドライブの故障によるgitリポジトリの破損の場合をデバッグしています。私は持っていますオブジェクトがどのコミットに属しているかを見つけますか?
>git fsck --full
fatal: loose object 25e9d8d2deb964c3da0f86f60bbd5a23e8387349 (stored in
.git/objects/25/e9d8d2deb964c3da0f86f60bbd5a23e8387349) is corrupt
>git show 25e9d8d2deb964c3da0f86f60bbd5a23e8387349
fatal: loose object 25e9d8d2deb964c3da0f86f60bbd5a23e8387349 (stored in
.git/objects/25/e9d8d2deb964c3da0f86f60bbd5a23e8387349) is corrupt
今、私はこのオブジェクトについて何かを知りたいと思います、それはどこに属していますか?私はその中に保存されたオブジェクトを調査しようとすると(?どのフォルダ、コミットする)
、私が取得:
>git show e9d8d2deb964c3da0f86f60bbd5a23e8387349
fatal: ambiguous argument 'e9d8d2deb964c3da0f86f60bbd5a23e8387349': unknown revision or
path not in the working tree. Use '--' to separate paths from revisions
どのように進めるべき?
私は今日のリポジトリのコピーを持っていますが、私はローカルの変更をゴミ箱に入れたくありません。リポジトリを修正できるか、あるいは単にコミットするだけです。
P.S. - 私は「緩いオブジェクト」問題について、いくつかのスレッドを発見しませんが、/決意を調査する方法についての具体的な指示を何も、両方とも私は別のレポでは、ノーがある場合に破損したオブジェクトのバックアップを見つけるのですか場合でこのオブジェクトのバックアップ。
P.S. 2 - 奇妙なことに、gitk --all
はうまく動作し、この破損した状態を気にしません。
私が最初にすることは、それがあるオブジェクトの種類を見つけることを試みるために、 'gitの猫ファイル-p'を使用することであると言うでしょう。 –
@グレッグ - 出力: 'エラー:inflateEnd:25e9d8d2deb964c3da0f86f60bbd5a23e8387349ヘッダー エラーを解凍することができませんでし有効なオブジェクト名25e9d8d2deb964c3da0f86f60bbd5a23e8387349' – ripper234
[OK]を、多分何をすることができます見て、他の'猫-file'オプションのいくつかを試していない: 致命的に失敗しました調べる。 –