相信有在寫程式的一定知道,備份程式是一件很重要的事
但人工備份真的是很花時間,又很佔空間,不過沒關係,可以在網路上找版本控制軟體
在此介紹的是subversion,以下簡稱SVN
這是一套免費的軟體,而且還滿好用的
網路上也可以找到很多相關的教學
不過因為在用的時候,還是有一些手續要做,所以就寫了一篇當給自己參考的文章嚕
首先先建立一個「資料庫(repository)」,在此我是建在database的資料夾內
接著建立三個空的資料夾,分別為「trunk」、「branches」、「tags」
並執行匯入的動作
檢查自己的資料庫是否有加入這三個資料夾,如果有的話就代表完成了
這三個資料的名稱是為了之後版本圖revision graph要用的,這些動作非常重要,沒做這些動作的話,以後可能會非常的痛苦,因為SVN可能會誤認為所有的資料夾都是trunk,要操作branch 或是tag就會變得非常的麻煩了。
接著在要更改的專案內,check out,通常第一次都是trunk,相信大家有先看過前一篇的SVN教學,在此就不多加解說了。
因為只是要練習用,所以我只有建立一個test的文字檔
選擇此文字檔為要commit的對象。
習慣上,最好是要加新功能的話,建一個branch來做編輯測試比較好
所以我們要建立一個branch出來
因為trunk只有一個,但branch和tag可以有很多個,所以這裡我先以branches/a1來建立
雖然名稱不是很重要,但最好建立的時候是取一個比較有意義的名稱,以免brance建多了,就會造成困擾了。
建完後,SVN不會自動幫你產生這個資料夾,所以需要自己手動從資料庫把branches/a1的專案check out出來。
這樣就可以針對a1做編輯測試的動作了
我們可以先看一下版本圖,我們可以發現,現在已經建出branch了。
如果需要把專案複制給別人的話,建議不要直接用「複制」、「貼上」的方式,因為這樣會把svn相關的檔案也一起複制、貼上了,所以比較好的方式是用「匯出」,將SVN資料庫內的專案匯出
這裡要注意一下,匯出的時候記得檔名要改一下,不然可能會有檔案名稱相同的衝突
我們可以發現匯出後,就多了一個my_a1的資料夾了,裡面就是一個不含SVN的專案了
題外話,最好是建立資料庫後,裡面再建立一個不同專案的branch,這樣才不會每建一個專案,就要再多一個資料庫了;另外雖然SVN很好用,但別忘了還是要固定的備份資料庫,以免資料庫壞了,所有的專案也跟本出問題了,這樣辛苦的結晶就都白費了