Hard-Link
dotfiles: can/should(?) gnu stow make hard links,所以我仍然可以使用 xfce 設置 gui 程序
我正在嘗試在版本控制下管理我的點文件。我的 dotfiles repos 包含一個
xfce-base
文件夾,這個文件夾包含的.config/xfce4/.../xy-setting.xml
東西。我可以將或更好的符號連結存放到正確的位置,一切都按預期工作。但是,當我打開其中一個 xfce 設置編輯器(視窗管理器、鍵盤快捷鍵)時,所做的更改會用普通文件覆蓋我的符號連結。所以,再見版本控制。我想這不會發生,如果我有硬連結,對吧?是否可以使用 gnu stow 進行硬連結(似乎不是?),還是有其他選擇?
編輯:我遇到了這個,有硬連結,但不能遞歸工作(抱怨現有的 .config 目錄……)
編輯二:我仍然不確定硬連結是否是一個好的解決方案。
GNU Stow 目前不支持硬連結是正確的。但是我認為您也是正確的,因為硬連結可能不是比符號連結更好的解決方案,因為如果外部應用程序很樂意用普通文件替換符號連結,那麼它當然也可以破壞硬連結(即替換索引節點)。
但是,我確實有一些好消息要告訴你 :-) 我還使用 GNU Stow 來管理我的 dotfiles,這就是為什麼在 2.1.3 中我特別添加了
--adopt
幫助精確處理這種情況的選項。在外部程序破壞了您的符號連結後,您可以使用此選項簡單地恢復,然後可能更改的文件版本將被採用到您的 Stow 包目錄中並恢復符號連結,最終效果不會更改文件。由於您通過版本控制跟踪您的點文件,因此您可以查看發生了什麼變化(例如通過git diff
),然後如果您願意,可以簽入部分或全部更改。NB 對於版本控制系統中未跟踪的包目錄,這是一個有風險的選項,因為它可以修改 Stow 包的內容而無法撤消更改。