.gitignore 組み立て

使っているOS・エディタ・言語にチェックを入れると、よく使う除外ルールをまとめた .gitignore を作ります。重複した行は1つにまとめ、パスが無視されるかどうかもその場で試せます。

テンプレートを選ぶ

できあがった .gitignore



  

パスが無視されるか試す(簡易判定)

書き方のきまり(Git の gitignore と同じ):* は / 以外の0文字以上、? は / 以外の1文字、[abc] はどれか1文字、** は何階層でも。末尾の / はフォルダだけに当たり、先頭や途中に / がある行は .gitignore を置いた場所からの位置で判定します。! で始まる行は、それより前で除外したものを取り消します。後に書いた行ほど優先されます。

親フォルダごと除外されたファイルは ! で取り消せません(Git がフォルダの中を見ないため)。例:logs/ のあとに !logs/keep.log と書いても無視されたままです。中身を一部残したいときは logs/* と書きます。

パスの判定はこのページの .gitignore 1つだけを対象にした簡易判定です。サブフォルダの .gitignore、.git/info/exclude、グローバル設定、すでにコミット済みのファイル(無視しても追跡が続きます。外すなら git rm --cached)は考慮しません。正確には git check-ignore -v パス で確認してください。

重複をまとめるときは最初に出てきた行を残します。! の行と順番の関係が変わることがまれにあるので、気になるときは結果を目で確認してください。保存したファイル名が「gitignore」や「.gitignore.txt」に変わった場合は .gitignore に直してください。入力内容はブラウザ内だけで処理します。

.gitignore 組み立てでできること

Git でコミットしたくないファイル(OSの隠しファイル、エディタの設定、node_modules、.env など)を除外する .gitignore を、チェックを入れるだけで組み立てます。重複した行はまとめ、あるパスが無視されるかどうかもその場で簡易判定できます。

使い方

  1. 「テンプレートを選ぶ」で、使っている OS・エディタ・言語・フレームワーク・その他(.env・秘密情報、ログ、ビルド成果物)にチェックを入れます。
  2. プロジェクト独自の除外があれば「追加したい行」に1行ずつ書きます。! で始めると、それより前の除外を取り消します。
  3. 「できあがった .gitignore」を確認し、「コピー」で貼り付けるか「.gitignore を保存」でファイルとして保存します。
  4. 「パスが無視されるか試す(簡易判定)」にリポジトリのルートからのパスを入れると、「無視される」「追跡される」と、決め手になった行が表示されます。

計算の仕組みと注意点

よくある質問

.gitignore に書いたのにファイルが無視されないのはなぜ?

すでにコミットして追跡されているファイルは、あとから .gitignore に書いても追跡が続きます。git rm --cached ファイル名 で追跡を外してからコミットしてください。書き方が合っているかは「パスが無視されるか試す」で先に確かめられます。

フォルダの中の一部のファイルだけ残したいときは?

logs/ のようにフォルダごと除外すると、中のファイルを ! で取り戻せません。logs/* と書いてフォルダの中身を除外し、そのあとに !logs/.gitkeep のように残したいものを書きます。判定欄に入れると「親フォルダ … で除外(中は取り消せません)」と出るかどうかで違いがわかります。

.env はコミットしないほうがいい?

APIキーやパスワードが入ることが多いので、一般には除外します。このツールの「.env・秘密情報」は .env と .env.* を除外し、項目名だけを書いた見本の .env.example は残す設定です。

/build/ と build/ はどう違う?

先頭に / がある /build/ はリポジトリ直下の build フォルダだけ、build/ はどの階層の build フォルダにも当たります。「追加したい行」に書いて、判定欄に build/a.js と src/build/a.js を入れると違いを確かめられます。