gitの、すごく初歩的なお話。
gitでは空のディレクトリはcommitできない。
なぜできないのかについては、
![](https://qiita-user-contents.imgix.net/https%3A%2F%2Fcdn.qiita.com%2Fassets%2Fpublic%2Fadvent-calendar-ogp-background-f625e957b80c4bd8dd47b724be996090.jpg?ixlib=rb-4.0.0&w=1200&mark64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9R2l0JTIwJUUzJTgxJUFGJUUzJTgxJUFBJUUzJTgxJTlDJUU3JUE5JUJBJUUzJTgxJUFFJUUzJTgzJTg3JUUzJTgyJUEzJUUzJTgzJUFDJUUzJTgyJUFGJUUzJTgzJTg4JUUzJTgzJUFBJUUzJTgyJTkyJUU3JTg0JUExJUU4JUE2JTk2JUUzJTgxJTk5JUUzJTgyJThCJUUzJTgxJUFFJUUzJTgxJThCJUVGJUJDJTlGJnR4dC1jb2xvcj0lMjMzQTNDM0MmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LWNsaXA9ZWxsaXBzaXMmdHh0LWFsaWduPWxlZnQlMkNtaWRkbGUmcz1jYjVkYjg2NTU3Yjk5ZDJjNDI5NTA3MzJmN2FlNTc0Nw&mark-x=142&mark-y=151&blend64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwUE9QT1BPTiZ0eHQtY29sb3I9JTIzM0EzQzNDJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9NGY0Mzc4NWRkM2M2ZmZhNDBhNmQ3YWEyOTg3ZmNlMDU&blend-x=142&blend-y=491&blend-mode=normal&s=d8b48e221fc3b31ba60632bcdaaaa6dd)
Git はなぜ空のディレクトリを無視するのか? - Qiita
LAPRAS アドベントカレンダー2021 の 17 日目の記事です。概要Git では空のディレクトリ…
など見てみるとよいかも。
やりたい事
gitで管理しているコンテンツで空のディレクトリをcommit(およびpush)したい。
やり方
空のディレクトリが git commit できないので、ディレクトリの中にファイルを作る。
作るファイルは、以下2つのいずれか(が一般的)。
- .gitkeep
- .gitignore
「.gitkeep」については、ファイル名は何でも良いんだと思う。
空のディレクトリをcommitするやり方は、2つあって、目的によって使い分ける。
![](https://qiita-user-contents.imgix.net/https%3A%2F%2Fcdn.qiita.com%2Fassets%2Fpublic%2Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png?ixlib=rb-4.0.0&w=1200&mark64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9JUU3JUE5JUJBJUUzJTgxJUFFJUUzJTgzJTg3JUUzJTgyJUEzJUUzJTgzJUFDJUUzJTgyJUFGJUUzJTgzJTg4JUUzJTgzJUFBJUUzJTgyJTkyJUU3JUI2JUFEJUU2JThDJTgxJUUzJTgxJTk5JUUzJTgyJThCJUUzJTgxJTlGJUUzJTgyJTgxJUUzJTgxJUFFJUUzJTgwJTgxJTIwLmdpdGtlZXAlMjAlRTMlODElQTglMjAuZ2l0aWdub3JlJTIwJUUzJTgxJUFFJUU0JUJEJUJGJUUzJTgxJTg0JUU1JTg4JTg2JUUzJTgxJTkxJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LWNsaXA9ZWxsaXBzaXMmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz1jMjQwMWIwN2NiZDkxNzQxZjY0NmQyOTA3YTczYWU4NQ&mark-x=142&mark-y=112&blend64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwbmR4Ym4mdHh0LWNvbG9yPSUyMzIxMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT0zNiZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZzPWQ1NmU1MDMxZmQyZjNkNmY4Y2ZkMWEwYmU5NWUyMGQw&blend-x=142&blend-y=491&blend-mode=normal&s=0322c1366ef37d9a4e64734bf6667d81)
空のディレクトリを維持するための、 .gitkeep と .gitignore の使い分け - Qiita
空のディレクトリをコミットに含めたいときは、2つのやり方があります。.gitkeep を使う方法 と、 .gitignore をおいておく方法(例えばPHPのフレームワーク Laravel で用いら…
「空のディレクトリにファイルが追加されたときに、そのファイルを Git での管理対象に含めたいか?」
空のディレクトリにファイルが追加されたときに…
そのファイルを Git での管理対象に含めたい場合
.gitkeep
を置く。
cd 対象の空ディレクトリ
touch .gitkeep
そのファイルを Git での管理対象に含めたくない場合
ログやキャッシュが溜まるディレクトリなどはこれにあたる。
やり方:
.gitignore
を置く。
cd 対象の空ディレクトリ
vim .gitignore
.gitignore の中身は以下の通り。
*
!.gitignore
コメント