最近我把 $HOME 裝進 Mercurial 了。
應該有很多人會這樣作。還沒有試的人可以試試看,味道不錯。下個 hg init ~/ 來在 $HOME 裡建立 .hg 貯庫,然後 .bashrc、.vimrc 和 .irssi/ 就可以通通塞進去了。
我的人生有一個謎,就是用的電腦會逐漸變多。先不論原因,這個現象不斷地造成問題,其中挺惱人的一個就是不同電腦上的 shell 設定不同步。我會用到 dfh、ll、j、s 等等不存在的指令,遇到新電腦都要想辦法生出來。還有很多這樣那樣的設定,軟體都沒有幫我設好,還要我自己調。太多了,類繁不及備載。為此,我只好考慮寫個工具隨時產生我想要的設定檔。
就在這個不可能成功的專案剛開始的時候,Mercurial 出現來救我了。
$HOME 設定檔的管理工具,必須具備兩個重要的特性:同步和易用。剛拿到新的帳號,整理操作環境是第一件工作,而且動作要快。所以一般來說就是靠 scp oldblah:~/.bashrc newblah:~/.bashrc 把舊機器的設定摳到新的去。這很快,可惜通常是一發設定;後來改過的設定都很少再作同步,因為很麻煩。最好呢,是能一地修改大家受惠。
再來是要好用。用我的標準來看,就是不能比 scp 更複雜。
Mercurial 很好,兩個特性都滿足。既然是 DSCM 就很好同步。codebase 很穩定,連 etch 裡都有。一旦 clone 下來,將來只要 pull -u 就可以取得更新,push 就可以上傳變更。
最重要的是我已經用得很順了,拿它來管 $HOME 剛剛好。
如果你也準備這樣幹,提醒一下,.hgignore 一開始就設好,免得把不該 add 的東西裝進貯庫去。
update: italkbb 大概買了 "home" 這個 google adword。一直出現它的廣告。
- Previous: XeTeX (誤 @2008/02/12
- Next: 「網路服務提供者責任限制」 @2008/02/20
Please send trackback to: http://blog.seety.org/everydaywork/2008/2/18/960/trackback/.