Gitで変更、追加したファイルが認識されないときに確認すべきこと
今回はGitで変更、追加したファイルが認識されないときに確認すべきことについてご紹介いたします。
Contents
Gitで変更、追加したファイルが認識されないときに確認すべきこと
Gitで変更、追加したファイルが認識されないという問題が起こりました。
gitignoreを確認しても、変更、追加したファイルが無視ファイルの対象ではありませんでした。
ただ、あることを確認したら上記の問題が解決いたしました。
今回はその体験を元に、Gitで変更、追加したファイルが認識されないときに確認すべきことについて二つご紹介いたします。
ここでご紹介するのは次の二つです。
・.gitignoreを確認する
・対象のリポジトリの中に他のGit管理下のものがないか確認する(=対象のリポジトリ配下に.gitファイルがないか確認する)
・.gitignoreを確認する
こちらはスタンダードな解決方法ですね。
.gitignoreのファイルに正規表現を交えてGitで無視したいファイルを書くことで、指定したファイルの変更、追加を感知させないことが可能です。
しかし、その性質上、変更、追加したいファイルが.gitignoreに書かれていると、自分がGitの対象としたいファイルの変更、追加を検知することができません。
.gitignoreに自分が変更、追加したいファイルが書かれてしまっているか確かめてみましょう。
・対象のリポジトリの中に他のGit管理下のものがないか確認する(=対象のリポジトリ配下に.gitファイルがないか確認する)
今回私がハマったことです。
Gitリポジトリの管理下に、さらに他のGitリポジトリがあるとき、浅い階層ではその他のGitリポジトリに置かれているファイルを感知しません。
例えば、リポジトリAがあるとして、Aの中のフォルダXにリポジトリBがあった場合にはそのリポジトリBに置かれているフォルダXをリポジトリAは感知しないのです。
リポジトリの配下であるかどうかは、.gitがあるかどうかで判断することができます。
.gitは隠しファイルであり、確認するためには少し特殊な操作等が必要かもしれませんが、確認してみましょう。
終わりに
今回はGitで変更、追加したファイルが認識されないときに確認すべきことについてご紹介いたしました。
ディスカッション
コメント一覧
2つ目に当てはまる場合、具体的にどうしたらいいのでしょうか??
gitの使い方学習中でファイルが認識されずまいっていて、もしよければ教えてください…
対象のリポジトリの中に他のGit管理下のものがあり、元のリポジトリで管理できない場合は他のGit管理下で管理するようにしましょう。
リポジトリAの中のフォルダXにリポジトリBがあった場合は、
1.リポジトリAの中にリポジトリBがあることがそもそも間違っている
2.フォルダXにファイルCがあった場合は、リポジトリAではなくリポジトリBでファイルCを管理すべき
ということが考えられるでしょう。