一、SVN安裝
1.安裝包
$ sudo apt-get install subversion
2.添加svn管理用戶及subversion組
$ sudo adduser svnuser
$ sudo addgroup subversion
$ sudo addgroup svnuser subversion
3.創建項目目錄
$ sudo mkdir /home/svn
$ cd /home/svn
$ sudo mkdir fitness
$ sudo chown -R root:subversion fitness
$ sudo chmod -R g+rws fitness
4.創建SVN文件倉庫
$ sudo svnadmin create /home/svn/fitness
5.訪問方式及項目導入:
$ svn co file:///home/svn/fitness
或者
$ svn co file://localhost/home/svn/fitness
* 注意:
如果您並不確定主機的名稱,您必須使用三個斜槓(///),而如果您指定了主機的名稱,則您必須使用兩個斜槓(//).
//--
下面的命令用於將項目導入到SVN 文件倉庫:
$ svn import -m "New import" /home/svn/fitness file:///home/svnuser/src/fitness
一定要註明導入信息
//--------------------------//
6.訪問權限設置
修改 /home/svn/fitness目錄下:
svnserve.conf 、passwd 、authz三個文件,行最前端不允許有空格
//--
編輯svnserve.conf文件,把如下兩行取消註釋
password-db = password
authz-db = authz
//補充說明
# [general]
anon-access = read
auth-access = write
password-db = passwd
其中 anon-access 和 auth-access 分別爲匿名和有權限用戶的權限,默認給匿名用戶只讀的權限,但如果想拒絕匿
名用戶的訪問,只需把 read 改成 none 就能達到目的。
//--
編輯/home/svnuser/etc/passwd 如下:
[users]
mirze = 123456
test1 = 123456
test2 = 123456
//--
編輯/home/svnuser/etc/authz如下
[groups]
admin = mirze,test1
test = test2
[/]
@admin=rw
*=r
這裏設置了三個用戶mirze,test1,test2密碼都是123456
其中mirze和test1屬於admin組,有讀和寫的權限,test2屬於test組只有讀的權限
7.啓動SVN服務
svnserve -d -r /home/svn
描述說明:
-d 表示svnserver以“守護”進程模式運行
-r 指定文件系統的根位置(版本庫的根目錄),這樣客戶端不用輸入全路徑,就可以訪問版本庫
如: svn://192.168.12.118/fitness
這時SVN安裝就完成了.
局域網訪問方式:
例如:svn checkout svn://192.168.12.118/fitness --username mirze --password 123456 /var/www/fitness
問題1 不允許匿名用戶登陸
問題2 添加用戶權限(authz),否則不能上傳文件
aliases]
# joe = /C=XZ/ST=Dessert/L=Snake City/O=Snake Oil, Ltd./OU=Research Institute/CN=Joe Average
[groups]
admin=mirze,test1
test=test2
@admin=rw
[/]
mirze=rw
*=r
問題3 上傳之後要在服務器上checkout才能看到
問題4:修改svn目錄權限 chmod -R 777