Help us understand the problem. What is going on with this article?

GitHub 上でサクッと空のディレクトリを作成する方法

やり方

createGitkeepWithDir3.gif

本来、新しいディレクトリを git 管理し、GitHub へ反映するには下記のような手順が必要です。

  1. ローカルで新しいディレクトリを作成
  2. 中にファイルを置く
  3. ファイルを git add する
  4. ファイルを git commit する
  5. git push する

しかし、前述のキャプチャの方法ならブラウザさえあれば GitHub上で全て完結できます。ローカル作業が面倒なときはお試しください。用途例としては、プロジェクトブランチに共用のディレクトリだけを先に用意する、みたいなときによく使います。

説明

Create new file をクリックして、ファイル名を path/to/.gitkeep という名前で作成します。すると、スラッシュで区切られたところはファイル名ではなくディレクトリ名として扱われ、path/to ディレクトリ内に .gitkeep というファイルが作成されます。このとき path/to ディレクトリがまだ存在しない場合は新しく作成されますのでこれを利用しているというわけです。

なんでディレクトリの作成をしたいだけなのに、わざわざこんなファイルを作るのかといいますと、git では空のディレクトリを add することはできないためです。 まだディレクトリに入れるファイルが何も無い場合でも何かしら入れておかないと add して git での管理ができません。

ここでは .gitkeep というファイルを設置しておくことでディレクトリを中身のある状態にしています。これによって add ができるようになります。.gitkeep ファイル自体は特に何も中身はない、ただの空ファイルです。ファイル名や中身はなんでもいいんですが、ディレクトリをgitに認識させるためだけに設置した特に中身には意味の無いファイルである ということがファイル名を見るだけでわかるので、一般的にこの名前で空ファイルを作ることが多いようです。「ああ、空ディレクトリを git 管理したいからとりあえず間に合わせで適当な空ファイル追加しただけなのね、ハイハイ。」 みたいな流れを想像できます。ちなみに .keep にしているケースも筆者は見かけたことがあります。

参考

.gitkeep を設置している点以外は基本下記と全く同じです。
https://stackoverflow.com/questions/18773598/creating-folders-inside-github-com-repo-without-using-git#answer-18791455

tommy_aka_jps
小ネタばかり投稿しているWEB開発者っぽいひとです。
https://jpsern.com
giftpad
ギフトカードで幸せを届ける!世界を笑顔にするベンチャー企業
https://giftpad.jp/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした