Gitでファイルがignoreされている理由を調べる
gitを使うなら、.gitignore
は使う。
イチから自分で設定することもあるけど、そういうのも面倒なので、 以下のようなサイトからテンプレートを引っ張って来ることが多い。
とても便利だが、なにぶん自分で書いた.gitignoreではないので ときどき予期せずファイルが無視されてしまうことがある。
こういったテンプレートはたいていよく作られているので、 どちらかというとファイル名をignoreされないものにしたほうが良いが、 なんにしても、なぜそのファイルがignoreされているのかを知る必要はある。
git check-ignore
というコマンドがあり、それに-v
オプションを付けることで、理由を調べられる。
git check-ignore -v <ファイル名>
実行すると以下のように、「どの.gitignoreの何行目にマッチしてファイルがignoreされている」 ということがわかりやすく表示される。
$ git check-ignore -v node_modules/rollup/package.json
.gitignore:16:/node_modules/ node_modules/rollup/package.json
ディレクトリ以下のすべてのファイルについて調べるときは、たとえば bashのglobstarオプションを有効にして、以下のようにする。
shopt -s globstar
git check-ignore -v **/*