.gitignoreとは?
・gitignoreとはGitで管理したくないファイル、ディレクトリを指定するもの
・本番環境と開発環境で値が変わる環境変数を持ったファイル(.env)や、自動生成されるもの(scssからコンパイルされたcssファイル等)、ログファイル等が主な除外対象
.gitignoreの書き方
# #で始まる行はコメント
# 特定の拡張子ファイルを除外する
*.env
**/css/style.css
**/img/**/*.min.webp
**/img/**/*.min.svg
*.htaccess
*.htpasswd
# 特定のフォルダを全て除外する
node_modules/
# 特定のパターンを除外しない
!/.gitignore
.gitignoreが反映されない時の対処法
既にコミットされたことがあるファイルが対象になっている場合が多い
キャッシュにインデックスが残っているので、キャッシュを削除して上げれば解決します。
$ git rm -r --cached . //全体キャッシュ削除
$ git rm -r --cached [ファイル名] //ファイル指定してキャッシュ削除
gitにいろいろ履歴が出てきますが実際にファイルが削除されるわけではないので問題ありません。
(例)キャッシュ削除してnode_modulesディレクトリ内全体
を除外した場合