Linux 下,使用 Git 管理 dotfiles(配置文件)

原文地址:http://www.xianmin.org/blog/1-dotfiles.html

管理你的 dotfiles

作為一個計算機深度使用者,并且長期使用 Linux 作為主要操作系統(tǒng),折騰各種功能強大的軟件是常有的事兒。這些軟件有它們各自的配置文件,通常以 . 開頭,因此有人管它們叫 dotfiles 。一旦 dotfiles 的數(shù)量增多,并且所在的位置不同,怎樣合理有效的管理它們是一個問題。

一個簡單的方法是:將所有配置文件統(tǒng)一丟進一個文件夾,用 git 進行管理,用 ln -s 鏈接到原來的位置(比如家目錄下)。

我在這里推薦一個命令行腳本——dotsync ,它可以將上面的方法更加簡化,并且在不同機器上進行同步。怎樣使用?你可以參考一下我的 dotfiles

dotsync 的使用

第一步,將 dotsync 克隆下來,在家目錄下創(chuàng)建一個 Dotfiles 文件夾(名稱任意),把 dotsync 中的配置模板 dotsyncrc 文件復制進去。

第二步,把所有需要管理的 dotfiles 復制到 Dotfiles/ 目錄中(例如 .vimrc, .zshrc 等等)。

第三步,修改 dotsyncrc 這個配置文件。如下:

# Location of your dotfiles in $HOME
DOTFILES=Dotfiles

# 添加你需要鏈接的文件
[files]
dotsyncrc                       # 相當于 ln -s dotsyncrc ~/.dotsyncrc
emacs/xm-spacemacs:.emacs.d     # 相當于 ln -s emacs/xm-spacemacs ~/.emacs.d
emacs/spacemacs                 # 相當于 ln -s emacs/spacemacs ~/.spacemacs
...
[endfiles]

[hosts]
xm-pc git=ANY                   # 計算機名稱
[endhosts]

第四步,運行 dotsync 命令。

# 假設你把 dotsync 克隆到了家目錄下

~/dotsync/bin/dotsync           # 運行,會提示你選擇參數(shù)
~/dotsync/bin/dotsync -l        # 查看將要鏈接的文件列表
~/dotsync/bin/dotsync -f ~/Dotfiles/dotsyncrc -L # -f 指定配置文件,-L 生成軟鏈接

這個時候,你在 dotsyncrc 中指定的文件,都在指定位置創(chuàng)建了軟鏈接。如果文件已經存在,它們都將備份到 ~/.backup/ 目錄。當你編輯軟鏈接文件的時候,實際上編輯的是 Dotfiles 目錄中的源文件。

第五步,這個時候,就可以使用 git 管理備份 Dotfiles 文件夾了。

將 dotsync 添加到 Shell 的 PATH 路徑

一個問題:怎樣在命令行中直接使用 dotsync?

我在 Dotfiles/ 目錄下創(chuàng)建了一個 bin/ 目錄,專門用來存放一些用戶自己編寫的腳本。然后把這個 bin 目錄添加到 shell 的 PATH 路徑,即在 .zshrc 文件中添加一行:

export PATH="$HOME/Dotfiles/bin:$PATH"

然后,

source ~/.zshrc                 # 重載 zshrc 文件
$PATH                           # 查看 PATH

這樣,我們就可以在命令行中直接使用 dotsync 這個命令了。

參考鏈接

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • linux資料總章2.1 1.0寫的不好抱歉 但是2.0已經改了很多 但是錯誤還是無法避免 以后資料會慢慢更新 大...
    數(shù)據(jù)革命閱讀 13,345評論 2 33
  • Ubuntu的發(fā)音 Ubuntu,源于非洲祖魯人和科薩人的語言,發(fā)作 oo-boon-too 的音。了解發(fā)音是有意...
    螢火蟲de夢閱讀 100,818評論 9 468
  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,695評論 19 139
  • 在linux下,各種軟件的配置文件大多存儲于以“.”開頭以“rc”結尾的文件中并存放于用戶的個人目錄~/中,也就是...
    wty21cn閱讀 3,613評論 0 1
  • 1.Linux下如何用命令查看實時日志(完整命令) tail -f 路徑.log查看前多少行 tai-200f 路...
    qianyewhy閱讀 2,561評論 0 11

友情鏈接更多精彩內容