1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

.keepファイルとは?空のフォルダをGitで管理する方法【フロントエンド向け超入門】

Posted at

はじめに

フロントエンド開発をしていて、こんな経験ありませんか?

👩‍💻「public/uploads/ フォルダを作ったのに、Gitに上がってない…?」
👨‍💻「ビルド後に使う dist/ フォルダ、空のままじゃGitで管理されないのか…」

👩‍💻「public/uploads/ フォルダを作ったのに、Gitに上がってない…?」

👨‍💻「ビルド後に使う dist/ フォルダ、空のままじゃGitで管理されないのか…」

そう、Gitは「空のフォルダ」を管理してくれないんです。
この記事では、そんなときに使える .keep.placeholder ファイルについて、フロントエンドエンジニア向けにわかりやすく紹介します!

なぜ空のフォルダはGitで無視されるの?

Gitは基本的に「ファイルを管理するツール」です。
そのため、中に何もないフォルダは無視されてしまうんです。

mkdir uploads
git add uploads
git commit -m "add uploads folder"
# => 実際には何もコミットされない!

解決策:ダミーファイルを入れよう

空のフォルダをGitで管理したいときは、中に空のファイルを1つ入れるだけでOKです!

mkdir uploads
touch uploads/.keep
git add uploads/.keep
git commit -m "Add uploads folder with .keep file"

これで、空のフォルダもちゃんとGitで管理されるようになります。

.keep・.gitkeep・.placeholderの違いは?

実は .keep という名前に特別な意味があるわけではありません。
よく使われるのはこの3つです

ファイル名 用途・意味
.keep 一般的でシンプル。慣習的に最もよく使われる
.gitkeep 「Gitで管理するよ」と名前で明示したいときに便利、Git対象だとわかりやすいが、Git公式ではない
.placeholder プレースホルダーパターンとして、意味を持たせたいときにおすすめ

プレースホルダーパターンとは?

.placeholder を使うパターンは、「ここに意味がある空間です」と明示する目的があります。

・自動生成されるファイルが入る予定
・一時ファイルが保存される場所
・アップロード先として用意されたディレクトリ

mkdir src/generated
touch src/generated/.placeholder
git add src/generated/.placeholder
git commit -m "Add placeholder for generated files"

👆これだけで、将来の目的がチームに伝わりやすくなります!

フロントエンドでの具体的な使いどころ

フォルダ名 用途例
public/uploads/ ユーザー画像のアップロード先
src/generated/ 自動生成された型ファイルやCSSなど
dist/ ビルド出力先(.gitignoreとセットで使う)
tmp/logs/ 開発中の一時ファイル・ログ保存先

まとめ

内容 説明
課題 Gitでは空のフォルダが無視される
解決法 .keep.placeholderなど、空のファイルを1つ入れる
命名の意味 .keep=慣習、.gitkeep=Git明示、.placeholder=意図の明示
ベストプラクス チームで使う命名ルールを統一するのがおすすめ!

使い分けのヒント

目的 ファイル名
とりあえず残したいだけ .keep
Git用と明示したい .gitkeep
意味のあるプレースホルダにしたい .placeholder

終わりに

.keep.placeholder は、ちょっと地味な存在ですが、プロジェクトの品質やチームの体験を底上げしてくれる小さな工夫です。

it公式には .keep や .gitkeep という「正式なルールや仕様」は存在せず、これらは 開発者コミュニティによって生まれた「慣習」 です。

・空のフォルダが無視されて困ったとき
・プレースホルダーとして意味を伝えたいとき

ぜひこのテクニックを思い出してみてください!

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?