はじめに
何かしらのものを作って、 Github に上げる際 .DS_Store というファイルを見ることがあります。
差分としてカウントされるので .gitignore をかけたり、何回も削除したり。
しかし、削除するのはいいですが中身が何か気になりますよね。
そこで簡単に .gitignore に関して調べてみました。
.DS_Store とは
名前の由来は Desktop Services Store。
フォルダごとの表示設定、アイコンの位置やウィンドウサイズ等の Finder がそのフォルダをどう表示するのかの設定を記録するファイルです。
フォルダを開くたびに MacOS によって自動生成、更新されます。
他環境から見ると意味がないファイルなので、グルーバル .gitignore に突っ込みましょう。
.DS_Store の中身
.DS_Store のフォーマット自体は非公開です。
しかし、有志の方が解析を行なっており中身はかなりわかっています。
詳細は参考文献で載せておくのでそちらをみてください。1
.DS_Store を放置するリスク
.DS_Store は macOS がフォルダの表示設定を保存するためのファイルですが、たとえば Web サーバーや公開リポジトリに含めたままだと、意図せぬ情報漏洩につながる可能性があります。
- フォルダ内のファイル名やディレクトリ構造が外部に知られてしまう可能性
- 過去に存在していたファイル(削除したファイルなど)が
.DS_Storeに残っていて、それが痕跡として漏れる可能性
構造が盛れるとそれを起点に攻撃される可能性があるので気をつけましょう。
おわりに
簡単な説明以上です。
みたことはあるけど中身がわからない、という状況はあまり良くないので調べてみました。
有志の方のフォーマットを見ましたが面白かったです。
やはり、知らないままで置いておくというのは良くないですね。
(面白いものを見逃す可能性があるので)
最後までお読みいただきありがとうございました。