グローバルなgitignoreの設定を大公開!
概要
Git 初学者向けに、Git のグローバルな設定の gitignore (~/.config/git/ignore
ファイル)のおすすめ設定を書いてみる。
背景
身近な人に Git/GitHub を勧めているが、初学者故に設定をしらないことがあるので、秘匿せずに設定ファイルを紹介する。みんなハッピー!!
対象読者
- Git 初学者
環境
今回の環境は次である。
$ 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
関連の紹介
プロジェクトによっては次のようなサイトが役立つ。
頻繁に使用する言語やフレームワークがあればグローバルに記載しても良いかもしれない。
Discussion