git ignoreで不要ファイルをリポジトリ管理対象外にする

この記事は約2分で読めます。

GitHubのリポジトリを作成した際、不要なファイルをpushしていたので「Git/GitHubのお作法覚えようか。git ignore調べて対応してね」というご指摘を頂いたので、備忘録的にこの記事を書いています。

スポンサーリンク

git ignoreとは?

GitやGitHubで管理対象外にしたいリソース(ファイルやディレクトリ)を定義する設定ファイルになります。

隠しファイルとして取扱うため、ファイル名は「.gitignore」になります。

スポンサーリンク

何故必要?

GitやGitHubで分散開発されている方は多いと思いますが、ローカル環境のBuildやDeployで作成される中間ファイルや隠しファイル(隠しディレクトリ)は他の開発者には不要だからです。

また、重要な機密ファイル(GCPだとサービスアカウントのCredentialFileとか)を誤って公開リポジトリにpushするといった事故防止のためにもgit ignoreの活用は必要だと思います。

※GCPの場合はKMSやSecret Managerなどで、こういった事故を防ぐことができますが、このあたりは別途記事に出来たらと思います。

スポンサーリンク

.ignoreのサンプル

最近Terraformで開発をしているので、Terraform向けの内容となっています。

Terraform以外で開発をされている方は5行目以降の内容を適宜カスタマイズ頂けたらと思います。

正規表現も使えるので、複雑なルールを記載することも可能です。

.gitignore(Terraform向けサンプル)

#.gitignore以外の隠しファイル、ディレクトリを除去
.*
!.gitignore

#tfstate除去
terraform.tfstate*

#出力結果ファイル(.txt)の除去
*.txt
スポンサーリンク

リポジトリに不要なファイルがpushされている場合は?

.gitignoreに不要なファイルを追記し、リポジトリにpushすればリポジトリから削除されます。