Subversion支持linux和windows,更多是安裝在linux下。
svn服務器有2種運行方式:獨立服務器和借助apache。2種方式各有利弊。
svn存儲版本數據也有2種方式:BDB和FSFS。因為BDB方式在服務器中斷時,有可能鎖住數據,所以還是FSFS方式更安全一點。
一、下載相關軟件
代碼如下:
wget http://subversion.tigris.org/downloads/subversion-1.6.1.tar.gz
代碼如下:
wget http://subversion.tigris.org/downloads/subversion-deps-1.6.1.tar.gz
二、安裝及配置
1、解壓:(要在同一個目錄下)
代碼如下:
tar -zxvf subversion-1.6.1.tar.gz
tar -zxvf subversion-deps-1.6.1.tar.gz
2、編譯安裝:
代碼如下:
./configure --prefix=/usr/local/svn/
make && make install
3、把SVN相關命令路徑添加到環境變量
代碼如下:
echo "export PATH=$PATH:/usr/local/svn/bin/" >> /etc/profile
source /etc/profile
三、建立測試倉庫
1、建立SVN的根目錄
代碼如下:
mkdir -p /opt/svn/
2、建立一個測試倉庫
代碼如下:
mkdir -p /opt/svn/svntest/
svnadmin create /opt/svn/svntest/
3、修改配置文件
在cd /opt/svn/svntest/conf/目錄下有三個文件:
svnserve.conf 是svn的配置文件
authz 是設置用戶權限的配置文件(可自定義文件名,在svnserve.conf的authz-db = authz中指定)
passwd 是設置用戶名和密碼的配置文件(可自定義文件名,在svnserve.conf的password-db = passwd中指定)
代碼如下:
vi svnserve.conf
修改如下:
代碼如下:
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
==================================================================
代碼如下:
vi authz
修改如下:
代碼如下:
[svntest:/]
92csz.com = rw
#給svntest倉庫添加一個名稱為92csz.com的用戶,權限為可寫。
==================================================================
代碼如下:
vi passwd
修改如下:
92csz.com = 123456
#由於是測試,密碼設置為123456
四、在客戶機安裝svn客戶端
1、下載地址:
http://code.google.com/p/rails4scm/downloads/detail?name=tortoisewin32svn.msi
2、下載完成後,直接next安裝即可,安裝完成後需要重啟生效。
五、啟動服務器及測試
1、啟SVN服務,並指定SVN的根目錄:
代碼如下:
svnserve -d -r /opt/svn/
2、檢查服務是否已經正常起來:
代碼如下:
netstat -tunlp | grep svn
結果如下,則表示正常監聽3690端口
代碼如下:
tcp 000.0.0.0:36900.0.0.0:* LISTEN 8646/svnserve
3、測試
在桌面上新建一個名稱為svntest的目錄,在此目錄上點擊右鍵,選擇Checkout,在首行填寫svn服務器的IP地址及倉庫名稱
登錄成功後如下圖(文件夾上有個綠色的勾)