请删除该 .DS_Store
当您使用 Finder 打开文件夹时, macOS 会自动创建.DS_Store
默认文件管理器。操作系统会将一些二进制信息存储在此文件中,例如文件夹内的文件列表。
虽然无法.DS_Store
直接打开文件(二进制数据)来读取,但解码却相当容易。如果出于某种原因,该文件被部署到 Web 服务器,情况就可能变得很糟糕:
- 它可能会泄露一些信息,例如某些已删除文件的名称,因为
.DS_Store
文件仅由 Finder 更新 - 它也可能用于从 Web 服务器递归下载文件🔥
你到底如何在生产中部署这样的文件?
它发生的频率比你想象的要高,例如,当你不忽略.DS_Store
项目中的文件时,.gitignore.
我经常会看到它,包括在公共存储库中。
对我来说,最好的方法是在你的机器上进行全局配置。这样,即使你忘记在特定项目中忽略这些文件,它也会被跳过。
以下命令将找到您的全局.gitignore
文件:
git config --global core.excludesfile
打开它并验证.DS_Store
文件是否在列表中。
如果忽略文件尚不存在,请.gitignore
在主目录的根目录下创建一个文件并运行以下命令:
git config --global core.excludesfile ~/.gitignore
它会将该文件设置为全局忽略文件。您可以在网上找到大量模板,以获取适用于各种用途的强大列表。
要列出并删除.DS_Store
存储库中现有的潜在资源:
find . -name .DS_Store -print0 | xargs -0 git rm -f --ignore-unmatch
注意安全。
鏂囩珷鏉ユ簮锛�https://dev.to/spo0q/please-remove-that-dsstore-39i3