登入  |  English
感謝您對「自由軟體鑄造場」的支持與愛護,十多年來「自由軟體鑄造場」受中央研究院支持,並在資訊科學研究所以及資訊科技創新研究中心執行,現已完成階段性的任務。 原網站預計持續維運至 2021年底,網站內容基本上不會再更動。本網站由 Denny Huang 備份封存。
也紀念我們永遠的朋友 李士傑先生(Shih-Chieh Ilya Li)。

3.SVN 情境導覽

市場上有一間名為歐奔的軟體公司,主要從事程式碼撰寫的工作,有一天,開始覺得團隊合作上有些問題,在版本控制上,容易做許多白工,因此專案經理史托
曼(小史)決定將現有的專案交由 SVN 版本控制來做,看了手冊後,將原本未在版本控制下的程式法,利用 svn import 的方式匯入版本庫(repository)內。
svn import file:///tmp/repos/test team_project

接下來將工作分配給予兩位工程師李納斯(小李)與畢斯迪(小畢),兩位工程師分別先利用 svn checkout 下載程式碼後,開始進行小史交代的修改。

svn checkout file:///tmp/repos/test team_project

小史交派小李的工作是撰寫一個math模組,於是小李新增一個了一個 math 目錄,放了 math.h 與 math.cpp,寫了交代的運算函式後,利用 svn add,將整個
math 目錄加入預計提交的清單中。

svn add math

告一段落後,利用 svn commit 進行提交的動作。

svn commit

同時間小畢在看完程式碼後,也要開始進行原專案 bug 修改工作,並將小李的 math 函式納入新版程式使用,於是利用 svn update 先將最新的程式碼更新到電腦中。

svn update file:///tmp/repos/test team_project

程式碼修改告一段落後,也利用 svn commit 進行提交的動作。

svn commit

好不容易,已完成進度的一半了,不過此時遇到了一些小麻煩,小李程式改一段落後,程式無法正常編譯了,但是上一版是可以的,因此小李利用 svn diff
終於找出程式錯誤的地方,原來是手滑多按了一個字母呀!改掉之後就回覆正常了。

svn diff

經歷了長時間的修改,商品終於要完整開放出來了,於是利用 svn export,輸出一份不帶有版本控制相關檔案資訊的程式碼,進行釋出的動作。

svn export file:///tmp/repos/test release_project





分類: Subversion