記錄一次使用Ubuntu環境搭建svn伺服器的詳細步驟
#####一、檢視是否已經安裝svn
命令:svn
如果顯示以下資訊,說明已安裝

#####二、解除安裝已安裝的svn
命令:sudo apt-get remove --purge subversion
#####三、安裝svn
######1.安裝svn
更新命令:sudo apt-get update
安裝svn:sudo apt-get install subversion
######2.建立svn版本庫
在home目錄下建立svn目錄,然後在svn中建立repository目錄
命令:sudo mkdir /home/svn
sudo mkdir /home/svn/repository
######3.修改repository檔案中許可權
命令:sudo chmod -R 777 /home/svn/repository
######4.建立版本庫
命令:sudo svnadmin create /home/svn/repository
執行完畢之後,repository目錄下會有如下檔案

######5.切換當前目錄到repository
命令:cd /home/svn/repository
######6.設定db檔案的許可權
命令:sudo chmod -R 777 db
######7.切換當前目錄打破conf
命令:cd conf
######8.修改配置檔案svnserve.conf
命令:sudo vi svnserve.conf
修改前:

修改後:

說明:(去掉前面的#,並且頂格)
anon-access = none 匿名使用者不可讀
auth-access = write 許可權使用者可寫
password-db = passwd 密碼檔案為passwd
authz-db = authz 許可權檔案為authz
######8.修改password檔案,新增訪問使用者
命令:sudo vi passwd
新增使用者格式:名字 = 密碼

######8.給使用者test增加目錄許可權
命令:sudo vi authz

使用者test擁有版本庫根目錄讀寫的許可權
#####四、啟動服務,並且監聽81埠
命令:svnserve -d -r /home/svn --listen-port 81
如果提示:許可權不夠

切換到root許可權
命令:sudo su
重試啟動svn:svnserve -d -r /home/svn --listen-port 81
檢視svn是否啟動
命令:ps -ef | grep svnserve

#####五、停止服務
命令:killall svnserve
#####附:精確目錄許可權控制
[/]
A=rw
A擁有版本庫根目錄讀寫的許可權
[/Android]
A=rw
B=r
A擁有Android目錄讀寫的許可權
B擁有Android目錄讀的許可權,但沒有寫的許可權
[/Android/Project1]
A=rw
*=r
A擁有/Android/Project1目錄讀寫的許可權
所有人都擁有/Android/Project1目錄讀的許可權