ubuntu下 SVN 服務器搭建及使用
1.安裝Subversion Server
Subversion server binaries maintained by the Ubuntu Project. Packages include the Subversion client, and tools to create a Subversion repository and to make a repository available over a network.
Run this command as root:
$ apt-get install subversion
從上面可以看出安裝很簡單只要運行如下命令:
sudo apt-get install subversion
驗證安裝是否成功可以使用如下命令:
svn help --svn幫助
svn --version --svn版本
svnserve --version --svn server版本
2. 創建SVN 版本庫
mkdir /u02/svn
svnadmin create /u02/svn/svnname --svnname為版本庫名稱
3.SVN 配置
創建版本庫後,在這個目錄下會生成3個配置文件:
[[email protected] conf]# pwd
/u02/svn/davesvn/conf
[[email protected] conf]# ls
authz passwd svnserve.conf
(1)svnserve.conf: svn服務配置文件下。
(2)passwd: 用戶名口令文件。
(3)authz: 權限配置文件。
svnserve.conf 文件, 該文件配置項分為以下5項:
anon-access: 控制非鑒權用戶訪問版本庫的權限。
auth-access: 控制鑒權用戶訪問版本庫的權限。
password-db: 指定用戶名口令文件名。
authz-db:指定權限配置文件名,通過該文件可以實現以路徑為基礎的訪問控制。
realm:指定版本庫的認證域,即在登錄時提示的認證域名稱。若兩個版本庫的認證域相同,建議使用相同的用戶名口令數據文件
Passwd 文件 :
我們在svnserve.conf文件裏啟用這個文件。然後配置如下:
[[email protected]
### This file is an example password file for svnserve.
### Its format is similar to that of svnserve.conf. As shown in the
### example below it contains one section labelled [users].
### The name and password for each user follow, one account per line.
[users]
# harry = harryssecret
# sally = sallyssecret
dave = davepwd
tianlesoftware = tianlesoftwarepwd
authz 文件 :
在網上找到一個很好的配置例子:
[groups]
admin = john, kate
devteam1 = john, rachel, sally
devteam2 = kate, peter, mark
docs = bob, jane, mike
training = zak
--這裏把不同用戶放到不同的組裏面,下面在設置目錄訪問權限的時候,用目錄來操作就可以了。
# 為所有庫指定默認訪問規則
# 所有人可以讀,管理員可以寫,危險分子沒有任何權限
[/] --對應我測試裏的:/u02/svn 目錄
* = r
@admin = rw
dangerman =
# 允許開發人員可以完全訪問他們的項目版本庫
[proj1:/]
@devteam1 = rw
[proj2:/]
@devteam2 = rw
[bigproj:/]
@devteam1 = rw
@devteam2 = rw
trevor = rw
# 文檔編寫人員對所有的docs目錄有寫權限
[/trunk/doc]
@docs = rw
# 培訓人員可以完全訪問培訓版本庫
[TrainingRepos:/]
@training = rw
下面我們來配置我們的authz文件:
[[email protected] conf]# cat authz
[groups]
admin = dave
dev=tianlesoftware
[davesvn:/]
@admin = rw
@dev = rw
[[email protected] conf]#
4 啟動和停止SVN服務
(1)啟動SVN服務:
[[email protected] conf]# svnserve -d -r /u02/svn
-d表示後臺運行
-r 指定根目錄是 /u02/svn
[[email protected] conf]# ps -ef | grep svn
root 4592 1 0 18:04 ? 00:00:00 svnserve -d -r /u02/svn
root 4594 3709 0 18:04 pts/1 00:00:00 grep svn
(2)停止SVN服務:
ps -aux |grep svn
kill -9 進程殺掉
本文轉自:https://my.oschina.net/jast90/blog/382688
ubuntu下 SVN 服務器搭建及使用