前些日子,我轉貼了有關資料備份的介紹,裡面談了“懶人版“的版本控管軟體Dropbox。今天打算來介紹真正的Version Control System (VCS)。
VCS的概念相當簡單,他想解決一個很(看來)很簡單,實情卻很麻煩的問題:多人共同撰寫文件。如果你用過Word,你大概有這樣一個印像,三個同學一組作一個報告,你寫前言結論,我寫文獻探討,他寫實驗部份。通常運作流程是這樣,先分好工作,然後大家各自努力,最後再選一名熱心負責的爐主(不,組長)做整理。
這樣的運作模式有很多的問題,第一,大家是分開工作,大家分開寫,三個人一組其實只是三個人各作1/3,而不是3倍的成果。舉例來說,當你有十個人的時候,這樣的分法基本上就是不可行的了。其二,大家必須EMAIL來EMAIL去,匯總完成後也不能隨意更改,更不用說文章整個被切成很多個斷落,可能不用心一點校對的話,同樣的專有名詞在一份報告裡還可能有不同的譯法。上面只是提了一個概念,簡單的說,當你有很多人需要合作的時候,多人編輯一份文獻是很麻煩的。
在Computer Science裡,還有更重要的任務就是要會”寫程式“。不使用VCS,寫程式的合作和上面的寫文件也差不多。更麻煩的事,當你發現你組員的程式有問題時,如果你擅自幫他改了,你們二個人的檔案就不同步,如此一來,問題就很嚴重,用白話文一點的說法就是,如果我在這裡寫了參考第一節第二段,但你加了一段(變成第三段了),沒人會知道,直到有一天某讀者發現為止。
再介紹GIT的使用前,還有一個VCS很重要的應用,就是備份及追蹤修定。一直到今天我還是常常使用很傳統的方法在寫論文,先在檔名命名1.0,然後如果有更改就1.1,1.2…大改時就2.0。我的上一篇PAPER一共大改了20次,所以最後完稿是Ver 20.3。留有舊版本只有一個原因,就是有時我刪了一段,但怕之後自己後悔,因此只要每次修改,自然就留下了一個”屍體“在那裡…
以上的問題通通都可以用Git來解決…這裡我們就跳過GIT的安裝,直接來聊GIT的使用,如果你對安裝有問題:
- Windows可以考慮用:msysgit
- Ubuntu的請直接:
sudo apt-get install git-core
沒有留言:
張貼留言