9

あいまいなタイトルで申し訳ありません。誰かがより良いものを思い付くことができれば、これを編集して私に知らせてください.

最近、git リポジトリを削除し、サーバーから新しいコピーをチェックアウトしました。残念ながら、これを行っているときに、使用していたことを忘れていましたgit-new-workdir(2 回チェックしたレポを複製したと思っていました)。今、私は自分の「workdir」で何もできません:

$ git log
fatal: bad default revision 'HEAD'

そして、git status必要以上の変更をもたらします。これを修正する方法について誰か考えがありますか?

より詳しい情報:

実行git fsckすると、次のことがわかります。

$ git fsck
notice: HEAD points to an unborn branch (dipole_fix)
missing blob d92f4a4f53c95c375146d9623910d8ec214aa02f
missing blob 7d81095605082af3252a47b47d81e48d4a78a668
missing blob f5d21b7785c4bca4efaa91ce5ef5a8bd82d98792
missing blob 79d3ad61db697ca7e89dbfd089a472dab0a7851b
missing blob 2cf0e64cbc0a816d7dc1b26fef43c2eb7c4fb6ac

価値があるのは、ブランチがあるリモートブランチがあるdipole_fixことです。それは(比較的)最新である必要があります。

更新 1 -- .gitworkdir の内容を見ると、ぶら下がっているシンボリック リンクがいくつかあるようです。

lrwxrwxrwx 1 mgilson mgilson     39 2012-04-26 10:43 remotes -> /orig_repo/.git/remotes
lrwxrwxrwx 1 mgilson mgilson     40 2012-04-26 10:43 rr-cache -> /orig_repo/.git/rr-cache
lrwxrwxrwx 1 mgilson mgilson     35 2012-04-26 10:43 svn -> /orig_repo/.git/svn

更新 2 -- Naievlyremotesへのリンク/orig_repo/refs/remotesは「悪い頭」の問題を取り除くように見えますが、今でgit statusは次のようになります。

error: unable to find d92f4a4f53c95c375146d9623910d8ec214aa02f
error: unable to find d92f4a4f53c95c375146d9623910d8ec214aa02f
error: unable to find f5d21b7785c4bca4efaa91ce5ef5a8bd82d98792
error: unable to find f5d21b7785c4bca4efaa91ce5ef5a8bd82d98792
error: unable to find 79d3ad61db697ca7e89dbfd089a472dab0a7851b
error: unable to find 79d3ad61db697ca7e89dbfd089a472dab0a7851b
4

2 に答える 2

1

次の方法で現在のブランチを確認します。

git branch 

現在のブランチとしてブランチが表示されない場合は、次を試してください。

git reset --hard <some branch>
于 2014-04-07T07:58:58.523 に答える