.gitignore ファイルを理解する
.gitignore によって不要なファイルをリポジトリから除外する方法を、パターン、適用範囲のルール、よくある落とし穴とともに学びます。
「.gitignore ファイルを理解する」はCoddyKit上の無料DevOps Bootcampレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはDevOps Bootcamp学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 DevOps Bootcampコースには全4レッスンが含まれています。
すべてを Git に入れる必要はない
ビルド成果物、ログ、シークレット、依存関係のフォルダーは、決してコミットしてはいけません。.gitignore ファイルを使うと、スキップするファイルを Git に正確に指定できます。
.gitignore とは
.gitignore は、パターンを記述した単なるテキストファイルです。パターンに一致するパスはステージングやコミットの対象外となるため、リポジトリをクリーンに保てます。
初めての .gitignore を作成する
リポジトリのルートに .gitignore を配置し、1 行に 1 つずつパターンを記述します。以下の例では、依存関係、ログ、環境変数ファイルを無視します。
# .gitignore
node_modules/
*.log
.env基本的なパターンのルール
基本的な パターン:*.log は拡張子で一致し、build/ はディレクトリ全体に一致し、単純な名前はその名前のファイル 1 つに一致します。
*.tmp
dist/
config.local.json先頭のスラッシュでルートに固定する
先頭の スラッシュを付けると、パターンがリポジトリのルートに固定されます。そのため、/todo.txt は最上位にあるファイルだけを無視し、ツリーの深い場所にある同名のファイルは無視しません。
# only ignores /todo.txt at the root
/todo.txt
# ignores todo.txt anywhere
todo.txt感嘆符で否定する
パターンの先頭に ! を付けると、前のルールで除外したものを再び対象にできます。たとえば、すべてのログを無視しつつ、保存したい 1 つのログだけを対象にできます。
# ignore all logs except the important one
*.log
!important.logワイルドカード:アスタリスクと二重アスタリスク
ワイルドカードでは、単一の * はスラッシュ以外の任意の文字列に一致し、** はディレクトリをまたいで任意の深さに一致します。
# any file in any logs directory at any depth
**/logs/*.log
# any .cache file in this dir or below
**/*.cacheコメントと空行
# で始まる行はコメントとして扱われ、空行はスキップされます。どちらも活用して .gitignore を整理し、読みやすく保ちましょう。
# Dependencies
node_modules/
# Environment
.envすでに追跡されているファイルの落とし穴
大きな落とし穴があります。.gitignore は追跡されていないファイルにのみ影響します。すでに追跡されているファイルにはルールが適用されないため、git rm --cached で追跡を解除する必要があります。
git rm --cached secret.txt
# now the ignore rule takes effect for future commitsファイルが無視される理由を確認する
パスが無視される理由がわからない場合は、git check-ignore -v を使うと、一致したルールと行を正確に確認できます。
git check-ignore -v build/app.js
# .gitignore:2:build/ build/app.jsグローバルな無視設定
エディターの設定ファイルや OS の不要ファイルなど、どのリポジトリにも入れたくない個人的な不要ファイルには、プロジェクトのファイルを汚さないように グローバルな ignore を設定します。
git config --global core.excludesFile ~/.gitignore_global理解度チェック
.gitignore の知識を確認します。
まとめ
.gitignore のパターン、ワイルドカード(*, **)、ルートへの固定(/)、否定(!)について学びました。対象となるのは追跡されていないファイルだけであることを覚えておきましょう。原因の確認には git check-ignore を使います。
よくある質問
「.gitignore ファイルを理解する」レッスンは無料ですか?
はい。「.gitignore ファイルを理解する」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、DevOps Bootcampコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 DevOps Bootcampコースには全4レッスンが含まれています。
「.gitignore ファイルを理解する」で何を学びますか?
.gitignore によって不要なファイルをリポジトリから除外する方法を、パターン、適用範囲のルール、よくある落とし穴とともに学びます。 ブラウザで直接実行するハンズオンコードでDevOps Bootcampを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
DevOps Bootcampを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのDevOps Bootcampは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。
「.gitignore ファイルを理解する」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このDevOps Bootcampレッスンでコードを書いて実行できますか?
はい。すべてのDevOps Bootcampレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- バージョン管理入門
- Gitのインストールと設定
- 最初のリポジトリを作成する
- .gitignore ファイルを理解する