2010年11月3日 星期三

為何選擇Mercurial?

大家都知道在版本控制SVN有著很棒的表現,可是卻不能滿足我們的貪婪.
在軟體設計上所有人都期望著one stop shopping.可以一套軟體滿足所有的需求!

在此之前我用了SVN很久了,不論是個人或在公司!但他一直有著一些麻煩的小缺點,讓我開始尋找另一個替代品.
我先說遇到的一些小問題吧:
  • 想要合併兩個不同Repository時, 得先把其中一個dump出來再load到另一個上才能開始合併!大家都知道SVN的速度是出了名的,尤其是資料龐大時...
  • 當我想臨時測試某個新的idea時, 要branch出來還得連上server.
  • 我也很希望可以真正的砍掉那些無用的branchs,不過這樣就違反了版本控制的精神,所以這我不care
我想這是我最常遇到的問題.

所以我開始找尋新的方案,那就是--分散式版本控制-Mercurial.
其實在這之前我也用過Git,但他強大的功能與複雜的指令.真是讓我的頭腦無法負荷,常常會用著SVN的work flow來思考,而把指令給搞混!再加上他跨平台跨的不是那麼漂亮,Linux上跑得真的是嚇嚇叫,速度真的無法挑剔.

而之前看到了Mercurial,從官網上看起來
1. 指令與用法跟SVN非常相似.
2. 跨平台又是用Python開發.
3. Google project也支援,目前還未試過,之前都使用SVN的方式存取.

參考網站:
http://sp1.wikidot.com/versioncontrol

沒有留言: