12
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【Github】git addしたら「does not have a commit checked out」エラーが出た

Posted at

概要

git addしたときに下のようなエラーが出ました。

error: 'work2' does not have a commit checked out
fatal: adding files failed

調べてみると、.gitが2つあることが原因でした。片方を削除するとaddできました。

経緯

以前作っていたリモートリポジトリ

前にGithubにリモートリポジトリを作って、ローカルからファイルをpushしていたものがありました。仮にこのリポジトリを「sample」とします。
ここに「work1」ディレクトリとREADME.mdファイルが入っていました。work1ディレクトリの中にもいくつかファイルが入っています。

sample/
  - work1
  - README.md

新しいディレクトリを追加したい

以前作ったときは、ローカルのファイルをVScodeからpushしていました。今回、cloud9上のファイルをpushしたいと考えていました。また「work2」ディレクトリを作って、その中にファイルという構成にしたいと考えていました。

sample/
  - work1
  - work2
  - README.md

まず、Githubで新しいディレクトリ「work2」を作りました。
Add fileからCreate new fileを選びます。
image.png

ファイル名に「work2/」とするとパスになり、その後ろに .gitkeepとするとディレクトリを作成できます。
image.png

pullする

Cloud9でターミナルを開き、リモートリポジトリと紐付けした後、pullしました。ローカルのmainブランチにリモートのmainブランチがマージされました。

$ git init
$ git remote add orgin リモートリポジトリURL
$ git pull origin main

addする

work2ディレクトリの中に追加したいファイルを入れる&作ります。その後、addしました。

$ git add .

エラー

すると、以下のようなエラーが出ました。

error: 'work2' does not have a commit checked out
fatal: adding files failed

解決

調べてみると、.gitが2つあることが問題であることがわかりました。1つはリモートリポジトリをpullしてきたローカルのディレクトリの中に、もう1つはwork2ディレクトリの中に作られていました。work2ディレクトリの中にある**.git**を削除してもう一度addすると、今度はpushまで問題なくできました!

原因?

おそらく、間違えてwork2ディレクトリにいるときにgit addしてしまったのが原因かと思われます。そこでエラーが出たのでわけがわからず、git initするというとんでもない間違いをしたがためにこんなことになったのだと思います。

まとめ

git addしたときに以下のようなエラーが出たときは、.gitが2つ存在していないか確かめると良いことがわかりました。

error: 'work2' does not have a commit checked out
fatal: adding files failed
12
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?