macOS .DS_Store
并没有 Windows 注册表来的方便;相反地,它还给 Git 使用者带来了麻烦,GitHub 仓库中会出现这些文件。
解决方法是,将 .DS_Store
加入全局的 .gitignore
文件:
1 | echo .DS_Store >> ~/.gitignore_global |
并使 GitHub 配置生效:
1 | git config --global core.excludesfile ~/.gitignore_global |
这样再次使用 git
同步仓库时,GitHub 就不会出现该文件。
删除已提交的 .DS_Store
文件:
1 | find . -name .DS_Store -print0 | xargs -0 git rm --ignore-unmatch |
删除本地的 .DS_Store
文件(仅工作目录):
1 | find . -name '*.DS_Store' -type f -delete |
并禁止这种文件生成:
1 | defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool TRUE |
如果允许生成,则执行:
1 | defaults delete com.apple.desktopservices DSDontWriteNetworkStores |