🔧

グローバルなgitignoreの設定を大公開!

2025/02/26に公開

概要

Git 初学者向けに、Git のグローバルな設定の gitignore (~/.config/git/ignore ファイル)のおすすめ設定を書いてみる。

背景

身近な人に Git/GitHub を勧めているが、初学者故に設定をしらないことがあるので、秘匿せずに設定ファイルを紹介する。みんなハッピー!!

対象読者

  • Git 初学者

環境

今回の環境は次である。

terminal
$ git --version
git version 2.48.1

本論

gitignore とは

この節は読み飛ばしても構わない。
手短に言うと、Git に「これらのファイルはバージョン管理の対象外です」と伝えるためのもの。
無視したいファイル名やパターン(正規表現)を記述する設定ファイル。
対象の例として、コンパイル後の成果物、ログ、個人設定ファイルなどが挙げられる。

指定する方法はいくつかある。

第一に、ローカル(レポジトリ毎)に設定する方法。
これはリポジトリのルートに .gitignore ファイルを置き、それに記述する。
ちなみに、! を付けた行は無視の否定ができる。
これは特定のレポジトリではグローバルの設定を適用したくない場合などに有効である。

第二に、グローバル(全リポジトリ共通)に設定する方法。
本記事の対象がこれなので以下に詳しく述べる。

グローバルな gitignore

~/.config/git/ignore ファイルに記述する。
ドキュメントとしては Git のドキュメントGitHub Docs を参照されたし。

具体的には ~/.config/git ディレクトリを作成する。
Windows風に言えば $home/.config/git だろうか。
. から始まるのでGUIで作成する場合は隠しファイルになることを念頭に。
Linux なら次のコマンドが使える。

mkdir -p ~/.config/git

そしたら、そのディレクトリ直下にignoreファイルを作成する。例えば次のコマンド。

touch ~/.config/git/ignore

おすすめの設定

次をおすすめの紹介として紹介する。
#以降は行コメントになるのでコピペで全てを記載しても構わない。

# macOS
.DS_Store
.AppleDouble
.Spotlight-V100
.Trashes

# Windows
Thumbs.db
ehthumbs.db
Desktop.ini

# WSL
*Zone.Identifier

# エディタ/IDE
.vscode/

# ログ・一時ファイルなど
*.log
*.tmp
*.temp
npm-debug.log*
yarn-debug.log*
yarn-error.log*

# ビルド成果物・依存関係など
/.pnp
.pnp.js
node_modules/

# 環境変数や機密情報など
.env
.env.*
.secrets
*.key
*.pem
*.crt

関連の紹介

プロジェクトによっては次のようなサイトが役立つ。
頻繁に使用する言語やフレームワークがあればグローバルに記載しても良いかもしれない。


参考文献

1

2

3

GitHubで編集を提案

Discussion