![如何使我的 OSX 设置处于版本控制之下?](https://linux22.com/image/1260479/%E5%A6%82%E4%BD%95%E4%BD%BF%E6%88%91%E7%9A%84%20OSX%20%E8%AE%BE%E7%BD%AE%E5%A4%84%E4%BA%8E%E7%89%88%E6%9C%AC%E6%8E%A7%E5%88%B6%E4%B9%8B%E4%B8%8B%EF%BC%9F.png)
我从 Linux 开始,习惯将配置文件保存在 git 存储库下。
自从我买了一台 MacBook 后,我通过首选项面板做了很多调整defaults write
,但真的不知道在哪里查找存储这些设置的 plist 文件(我假设)。
知道如何开始吗?
答案1
您的个人偏好设置、应用程序支持文件、缓存等主要存储在 中~/Library
。某些应用程序(源自 BSD 的应用程序)将隐藏文件和目录直接保存在 中~
,其他应用程序则会污染~/Documents
。
您的个人用户设置(您使用 进行的所有操作defaults
)位于 中~/Library/Preferences/
。某些应用程序(SSH、bash 等)仍将其隐藏的首选项文件直接存储在 中~
,您通常可以通过符号链接 或source
到其他应用程序。
许多应用程序存储支持文件(例如文档数据库)~/Library/Application Support/
——存储在那里的文件是否具有实际价值取决于单个应用程序。
一些应用程序或子系统(Safari、Mail、QuickLook 插件、打印机配置、个人仪表板小部件)存储在 的子目录中~/Library
。您应该逐个评估它们,以确定是否要将其内容存储在版本控制中。
这可能是这里的有用资源。
我不建议将所有内容都放入~/Library
版本控制中。有大量的缓存等。
答案2
首先,有些人可能会将 Time Machine 视为一种版本控制。与 Time Machine 相关的是它用于跟踪每个周期要备份的内容。FSEvents 是在 10.4 中引入的,用于跟踪 Spotlight 的索引内容,Time Machine 也使用相同的方法。您可以使用以下方式利用 FSEvents七人查看当您使用默认值进行更改时正在编辑哪些文件。
我可以告诉你,你所说的 plist 存在于文件系统中各种 Library 文件夹的 Preferences 文件夹中。我能想到的,按优先级从高到低的顺序排列如下:
~/Library
/Library
/var/root/Library
/System/Library
/Library
我对两者之间的关系并不是 100%/var/root/Library
确定——但我知道两者通常不会有太多重叠。/Library
通常用于系统应用程序设置,/var/root/Library
通常用于系统用户设置。例如,某些蓝牙设置和所有用户的 loginwindow.plist 设置都存储在那里。您会发现,即使在其中两个目录中存在相同的文件名,也只有个别键/值对会重叠。