如何快速建立Subversion伺服器,并且在項目中使用起來,這是大家最關心的問題,與CVS相比,Subversion有更多的選擇,也更加的容易,幾個指令就可以建立一套伺服器環境,可以使用起來,這裡配套有動畫教程。
本文是使用Subversion最快速的教程,在最短的時間裡幫助您建立起一套可用的伺服器環境,隻需略加調整就可以應用到實際項目當中。
本教程分為以下幾個部門,不僅僅是快速入門,最後我們還有一些進階功能的說明,為了說明簡單,教程是在windows下使用的方式,以友善資源有限的項目使用,對于UNIX環境下,差別并不大。
- 軟體下載下傳
- 伺服器和用戶端安裝
- 建立版本庫(Repository)
- 配置使用者和權限
- 運作獨立伺服器
- 初始化導入
- 基本用戶端操作
1.軟體下載下傳
1.1 下載下傳Subversion伺服器程式。
到官方網站的下載下傳二進制安裝檔案,來到二進制包下載下傳部分,找到 Windows NT, 2000, XP and 2003部分,然後選擇" this directory ",這樣我們可以看到許多下載下傳的内容,目前可以下載下傳 svn-1.4.0-setup.exe 。
1.2 下載下傳Subversion的Windows用戶端TortoiseSVN。
TortoiseSVN是擴充Windows Shell的一套工具,可以看作Windows資料總管的插件,安裝之後Windows就可以識别Subversion的工作目錄。
官方網站是TortoiseSVN ,下載下傳方式和前面的svn伺服器類似,在Download頁面的我們可以選擇下載下傳的版本,目前的最高穩定版本的安裝檔案為TortoiseSVN-1.4.0.7501-win32-svn-1.4.0.msi。
2.伺服器和用戶端安裝
伺服器安裝,直接運作svn-1.4.0-setup.exe ,根據提示安裝即可,這樣我們就有了一套伺服器可以運作的環境。
安裝TortoiseSVN,同樣直接運作TortoiseSVN-1.4.0.7501-win32-svn-1.4.0.msi按照提示安裝即可,不過最後完成後會提示是否重新開機,其實重新開機隻是使svn工作拷貝在windows中的特殊樣式生效,與所有的實際功能無關,這裡為了立刻看到好的效果,還是重新啟動機器。
3.建立版本庫(Repository)
運作Subversion伺服器需要首先要建立一個版本庫(Repository),可以看作伺服器上存放資料的資料庫,在安裝了Subversion伺服器之後,可以直接運作,如:
svnadmin create E:/svndemo/repository
就會在目錄E:/svndemo/repository下建立一個版本庫。
我們也可以使用TortoiseSVN圖形化的完成這一步:
在目錄E:/svndemo/repository下"右鍵->TortoiseSVN->Create Repository here...“, 然後可以選擇版本庫模式, 這裡使用預設即可, 然後就建立了一系列目錄和檔案。
4.配置使用者和權限
來到E:/svndemo/repository/conf目錄,修改svnserve.conf:
# [general]
# password-db = passwd
改為:
[general]
password-db = passwd
然後修改同目錄的passwd檔案,去掉下面三行的注釋:
# [users]
# harry = harryssecret
# sally = sallyssecret
最後變成:
[users]
harry = harryssecret
sally = sallyssecret
5.運作獨立伺服器
在任意目錄下運作:
svnserve -d -r E:/svndemo/repository
我們的伺服器程式就已經啟動了。注意不要關閉指令行視窗,關閉視窗也會把svnserve停止。
6.初始化導入
來到我們想要導入的項目根目錄,在這個例子裡是E:/svndemo/initproject,目錄下有一個readme.txt檔案:
右鍵->TortoiseSVN->Import...
URL of repository輸入“svn://localhost/”
ok
完成之後目錄沒有任何變化,如果沒有報錯,資料就已經全部導入到了我們剛才定義的版本庫中。
需要注意的是,這一步操作可以完全在另一台安裝了TortoiseSVN的主機上進行。例如運作svnserve的主機的IP是133.96.121.22,則URL部分輸入的内容就是“svn://133.96.121.22/”。
7.基本用戶端操作
取出版本庫到一個工作拷貝:
來到任意空目錄下,在本例中是E:/svndemo/wc1,運作右鍵->Checkout,在URL of repository中輸入svn://localhost/,這樣我們就得到了一份工作拷貝。
在工作拷貝中作出修改并送出:
打開readme.txt,作出修改,然後右鍵->Commit...,這樣我們就把修改送出到了版本庫,我們可以運作。
察看所作的修改:
readme.txt上右鍵->TortoiseSVN->Show Log,這樣我們就可以看到我們對這個檔案所有的送出。在版本1上右鍵->Compare with working copy,我們可以比較工作拷貝的檔案和版本1的差別。