dotfiles: can/should(?) gnu stow 创建硬链接,所以我仍然可以使用 xfce 设置 gui 程序

ben*_*kji 3 hard-link dot-files stow

我正在尝试在版本控制下管理我的点文件。我的 dotfiles 存储库包含一个xfce-base文件夹,该文件夹包含.config/xfce4/.../xy-setting.xml内容。我可以将符号链接或更好地存放到正确的位置,一切都按预期工作。

但是,当我打开其中一个 xfce 设置编辑器(窗口管理器、键盘快捷键)时,所做的更改确实用普通文件覆盖了我的符号链接。所以,再见版本控制。我想这不会发生,如果我有硬链接,对吗?是否可以使用 gnu stow 进行硬链接(看起来不是这样?),还是有其他选择?

编辑:我遇到了这个,有硬链接,但不能递归地工作(抱怨现有的 .config 目录......)

编辑二:我仍然不确定硬链接是否是一个好的解决方案。

Ada*_*ers 7

您说 GNU Stow 目前不支持硬链接是正确的。但是我认为您也是正确的,因为硬链接可能不是比符号链接更好的解决方案,因为如果外部应用程序很乐意用普通文件替换符号链接,那么它当然也可以破坏硬链接(即替换节点)。

但是,我确实有一些好消息要告诉您 :-) 我也使用 GNU Stow 来管理我的 dotfiles,这就是为什么我在 2.1.3 中专门添加--adopt帮助处理这种情况选项。经过一个外部程序已经打破了你的符号链接,你可以简单地使用此选项restow,然后可能更改版本的文件将被采用到您的垫木包目录和符号链接恢复,没有变化的净效应内容的文件。由于您通过版本控制跟踪您的点文件,因此您可以查看发生了哪些更改(例如通过git diff),然后如果需要,检查部分或全部更改。

注意对于版本控制系统中未跟踪的包目录,这是一个冒险的选择,因为它可以修改 Stow 包的内容而无法撤消更改。