git で空ディレクトリを管理(add)する方法
9 years ago
オレの Advent Calendar 2015 - Adventar の 12 日目です.
git を使っていると空ディレクトリを管理したいってことよくあると思います. 一時(tmp)ファイル や ログ(log) ファイル用のディレクトリなんかがそうですね.
実は, git は空ディレクトリは add できない仕様みたいです.
ですが, .gitignore
を上手く使うことでそれっぽいことができるようになります. 今回はその方法を紹介したいと思います.
1. ".gitkeep" という空ファイルを配置
管理したいディレクトリ(ここでは tmp とする)に .gitkeep
という空のファイルを作成します. (tmp/.gitkeep
)
2. ".gitignore" を作成
おなじみの無視ファイルですね.
.gitignore
を作り中を下記のようにします.
tmp/*
!.gitkeep
こうすることで 『tmp 内のファイルは全て無視するよー, けど .gitkeep は例外ねー』 といった具合になるわけです.
ちなみに .gitkeep
という名前は何でも良いです. ただ慣習として .gitkeep
もしくは .keep
という名前を使おうってことになっているみたいです!