.gitignoreファイルでGit管理対象外のファイルを無視する

スポンサーリンク

はじめに

Gitで管理対象外のファイルがある場合に.gitignoreファイルを作成することで対象のファイルを無視することができます。ここでは.gitignoreの書き方についてまとめています。

環境

OS Windows 7 Pro 64bit
git git version 2.12.2.windows.1

.gitignoreファイルについて

.gitignoreファイルは各行に除外するファイルのパターンを記述します。
既にGitによって管理されているファイルは除外されません(除外するためには対象のインデックスを削除する必要があります)。
ルートフォルダおよびサブフォルダに指定することができ、上位レベルのファイルのパターンは下位レベルのファイルによって上書きされます。
次のようなフォルダ構成の場合、root直下の.gitignoreファイルのパターンはtmpフォルダの.gitignoreファイルのパターンによって上書きされます。

root
  ┣ .git
  ┣ public
  ┃   ┗ index.html
  ┣ tmp
  ┃   ┗ .gitignore
  ┗ .gitignore

但し.gitignoreファイルはGitで管理されるため、ローカル環境のみで使用するファイルを除外する場合は.gitignoreファイルを使用するのではなく、.git/info/excludeファイルにパターンを記述します。

.gitignoreの書き方

.gitignoreファイルのパターンの書き方は以下の通りです。

  • 空の行は一致しないため無視されます。
  • #で始まる行はコメントになります。
  • パターンがスラッシュで終わる場合はフォルダとの一致になります。
  • スラッシュが含まれていない場合はシェルglobパターンとしてマッチングされます。
  • スラッシュから始まる場合はその.gitignoreファイルからの相対パスになります。
  • アスタリスクが2つ連続する場合は特別な意味があります。

パターンの書き方の例

  • test.htmlという名前のファイルを無視する。

    test.html
    
  • 拡張子が.txtのファイルを無視する。

    *.txt
    
  • tmpという名前のフォルダを無視する。

    tmp/
    
  • 拡張子が.cssのファイルを無視しない。

    !*.css
    
  • 拡張子が.cssのファイルを無視しない。

    !*.css
    

空のフォルダを管理対象にする

Gitは空のフォルダを管理対象にしないため、空のフォルダをGitに含める場合は.gitkeepファイルをフォルダに含めます。

uploadフォルダを管理対象に含める場合

root
  ┣ upload
  ┃   ┗ .gitkeep
  ┗ .gitignore
スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする