fatal: not a git repository (or any of the parent directories): .git とは?
今回は暗証番号の桁数をmax20桁だったところを30桁に修正するという単純な作業が発生しました。
既存のリポジトリをgit clone して環境構築とローカル上の修正を終えたところで、git pushすると以下のエラーが出ました。
fatal: not a git repository (or any of the parent directories): .git
直訳すると以下のようなメッセージになります。
「致命的!gitリポジトリか親ディレクトリが見つかりません!」
要するにgit push する場所が間違っているということです。
エラー解決策と原因
私が行ったエラー解決策は以下の通りです。
- "git rev-parse --show-toplevel"コマンドを実行
※こちらはgitリポジトリのルートディレクトリを確認するコマンドです。 - 上記のコマンドで出力されたgitリポジトリのルートディレクトリへ移動
- 再度、"git push"を行うと無事に実行される
今回間違っていた原因はGitリポジトリのルートディレクトリを誤っていたことが原因でした。
例えば"git rev-parse --show-toplevel"を実行すると以下のように出力されました。
C:/Users/suzuki/PhpstormProjects/hoge/master
しかし私が"git push"を行ったのは以下のディレクトリでした。
C:/Users/suzuki/PhpstormProjects/hoge
ですから「致命的!gitリポジトリか親ディレクトリが見つかりません!」 というようなエラーがでたのでしょう。
あとは"cd master"コマンドで指定の場所に移動してから、"git push"を行うと無事に実行できました。
まとめ
やはりgitは使いながら慣れていくしかありません。そもそもgitのディレクトリ階層なんて考えたこともなかったです。。。
それではここまでお読みいただきありがとうございました!