0
0

More than 1 year has passed since last update.

gitignoreしていないのに変更・追加した差分が認識されない

Posted at

発生した現象

rails-react-matching-appというリポジトリ内で
backendというディレクトリを作成し色々とファイルを追加したのですが、
いざgitで差分を確認するとbackendというディレクトリしか認識されておらず、
その中に追加されたファイルの差分は出ていませんでした。

以前にもハマってその時はなんとか解決したのですが、
解決方法を忘れてしまい2度目のハマりポイントだったので記事にしようと思いました。

実行したコマンド

新規リポジトリを作成した後、
ディレクトリと諸々のファイルについてはこんな感じのコマンドで作成しました。

$ mkdir backend && cd backend
$ touch Dockerfile docker-compose.yml entrypoint.sh Gemfile Gemfile.lock

実際の状態のスクショ

こんな状態でした。

backendというディレクトリの差分は出ているのですが、
中身のファイルについては何一つ差分が出ておらず。

スクリーンショット 2023-08-20 16.19.28.png

もちろんまずは.gitignoreの設定を疑ったのですが、
特にいじってなく、実際に無視するように設定していませんでした。

.gitignoreの状態

backend配下を無視する設定はないです。
Rails newした際に自動で作成されたもので、全くいじってません。

スクリーンショット 2023-08-20 16.22.15.png

原因

こちらの記事が解決の糸口になりました。

Gitリポジトリの管理下に、さらに他のGitリポジトリがあるとき、浅い階層ではその他のGitリポジトリに置かれているファイルを感知しません。

結論、backendディレクトリ下に.gitディレクトリが存在していたことが原因でした。

今回はrails-react-matching-appというディレクトリを作成しており、
その配下にbackendというディレクトリを新規作成したのですが、
そのbackendディレクトリ配下に.gitディレクトリが存在していたことが問題でした。

backendディレクトリ配下に.gitディレクトリが存在していたため、
rails-react-matching-appの中にさらに別のGitリポジトリがあると認識されてしまい、
backendディレクトリの中の差分は認識されなかったということになります。

.gitは隠しフォルダなのでなかなか気づけませんでした。

無事差分が出ました

上記より、.gitがなければ他のリポジトリだと認識されないので、
単純に.gitを削除することで解決できました。

スクリーンショット 2023-08-20 17.09.39.png

参考

.gitディレクトリとは?という方はこちら。

0
0
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
0
0