一、SVN安裝
1. yum install subversion :安裝svn
2.安裝成功后查看svn版本:svn --version
3.創建svn倉庫:
(1) mkdir /svn (這里直接在根目錄創建)
(2) svnadmin create /svn :創建svn倉庫
ps:如果這里提示command not found ,則需要賦權限:chmod 777 /svn
二、svn配置文件
1. 進入svn目錄:
2.進入conf目錄:
3.會發現如下配置文件:
(1) svnserve.conf:對整個svnserve的進程進行配置
改成我這樣就可以了:
anon-access = none 取消匿名訪問
auth-access = write 控制經過驗證允許訪問庫的用戶的權限
authz-db = authz 指定當前庫對應的用戶權限配置文件
password-db = passwd 指定當前庫所對應的用戶配置文件
* 切記“#”號和空格都要刪除*
(2) passwd:用來配置用戶及密碼
這一步配置用戶名和密碼,即“用戶名 = 密碼” ,記得“=”左右有一個空格
(3) authz:配置用戶訪問權限
這里有兩種配置方式(配置權限都是根據已有的用戶,即passwd中的指定的用戶):
① 直接指定根目錄的用戶訪問權限:
這種方式即給每個用戶依次賦予讀寫的權限,沒有的則不能訪問,記得“=”左右都有空格的
②先把用戶分組,規定哪些是管理員,哪些是普通用戶等等,再根據用戶組進行權限的分配:
現在[groups]將用戶分組,admin是管理員,low是開發人員,test是測試人員
第二步就是將不同的目錄賦予不同的權限,即指定的人才能看到(下圖是svn中admin看的結構):
那現在我們接下來做的就是規定開發人員只能develop目錄和ui設計目錄,測試人員只能看到test目錄和ui設計目錄,admin都能看到:
@admin 代表是admin用戶組
@admin = rw 代表admin用戶組具有讀寫的權限
* = r 除了上述的用戶組或者人員外其他都只有讀的權限
[/develop] 代表根目錄下的develop目錄
@admin = rw 和 @low = rw ,* = 代表除了admin和low指定了權限外其他的人沒權限看到
同理 [/test] 目錄下代表admin和test指定了權限外其他的人沒權限看到
沒有配置的目錄默認都可以看到
...
三、svn啟動生效配置和停止
1.以上配置都配好后,接下來就是要使配置生效,啟動svn:
svnserve -d -r /svn -d表示后台運行svn服務,-r是指定svn目錄
2.啟動后查看svn狀態:
3.停止svn:
netstat -anp | grep svn 或者 ps -ef | grep svn
如上圖可以看到pid為30278,
kill -9 30278 即可停止svn服務(kill -9 pid),修改完配置要停止,重新啟動才會生效
四、效果圖
test組用戶組:
low用戶組:
<OVER>