2012-09-10 12 views
5

私は現在の開発用のmasterブランチとdevブランチを持っています(ローカル作業コピー)。私はマスターからの変更を私のdevブランチにマージする必要があります。私はgitの隠し場所を実行し、次のエラーを発見合併前:このエラーを調べるためにgithubワークフロー - 致命的:gitリポジトリ(または親ディレクトリのいずれでもない):.git

fatal: Not a git repository (or any of the parent directories): .git

を私は、次のコマンドを実行しました: git status git branch git remote -v。いずれかの私のdevの枝の上fatal: Not a git repository (or any of the parent directories): .git

が、私は私の地元の作業ディレクトリからすべての変更をコミットすることはできません。すべては私も同じ結果を生成する私の枝git remote set-url origin https://github.com/Connexions/oer.exports.gitの起源をリセットしようとした同じエラーfatal: Not a git repository (or any of the parent directories): .git

を生産しました。

この問題を解決する方法についてのご意見はありますか?

+0

現在のディレクトリに '.git'フォルダがあることを確認しますか? – Whymarrh

+0

このディレクトリに '$ ls .git'と表示されますか? –

+0

私はブランチをバックアップし、再クローンし、ブランチを引っ張ってファイルを元に戻すことにしました。これで私の問題は解決しました。ありがとう。 –

答えて

2

何らかの理由ででなく、がgit repo作業ツリーにあることがあります。
例として「After git clone I get a “ fatal: Not a git repository (or any of the parent directories): .git ” error」を参照してください。

環境変数GIT_WORK_TREEが間違ったパスに設定されている可能性もあります。
それともrvmのようにGitのリポジトリを使用してラッパーに見られる通常の状況を解決するための良い方法です(あなたがやっている)新しいクローン状況をリセットし、両方のケースで

を(例えばthis threadを参照してください)。

13

次のファイルを確認してください:このコンテンツが破損と思われる場合は

  • your_repo_dir/.git/HEAD

を、これは問題です。私は同様の問題を抱えていたので、HEADファイルの内容を選択したブランチからの最後のコミットのgit commitハッシュに置き換えて修正しました。

ハッシュをコミットは、私はそれが役に立てば幸い.git/logs/refs/heads and branch_name_file

の下に見つけることができます。

+0

これは私がこの問題に遭遇したときの解決策でした。 HEADファイルが消えてしまった。 –

+0

これは私たちの場合にも機能しました。私たちのコードディレクトリは、samba経由でVirtualBoxゲストからmacにマウントされています。よくスリープ状態から復帰した後、このエラーが発生します。 .git/HEADは空であり、正当なshaで復元すると問題が解決されます。削除されなければならなかった残りの.git/index.lockもありました。 – apinstein

3

Visual Studio gitプラグインで問題が発生した後、このエラーが発生しました。

ソリューションはmy_repo_dir/.git/HEAD.lock何かが頭のファイルをロックした後に墜落し、それがレポを殺したように見える

my_repo_dir/.git/HEADに名前を変更することでした。

2

私はブランチをVisual Studioからリモートにプッシュしようとした後に同じ問題がありました。その内容を確認した後、.git/HEAD.lockを.git/HEADに変更しました。今それは正常に動作します。

関連する問題