開發基礎 - Linux下安裝SVN服務端

第一步:檢查是否安裝

使用版本查看檢查svn是否已經安裝過,如果反饋版本則已經安裝過就不需要再次安裝,如沒有反饋版本信息則可通過yum安裝軟件。

[root@localhost /]# svnserve --version

*其他:*刪除已完成版本

[root@localhost /]# yum remove subversion

第二步:安裝

使用yum安裝非常簡單:等待安裝即可

   [root@localhost /]# yum install subversion

第三步:創建倉庫目錄

我們這裏在/home下建立一個名爲svn的倉庫(repository),以後所有代碼都放在這個下面,創建成功後在svn下面多了幾個文件夾。

[root@localhost /]# cd /home
[root@localhost home]# mkdir svn
[root@localhost home]# svnadmin create /home/svn
[root@localhost home]# ls svn
conf  db  format  hooks  locks  README.txt

我們這裏特別關注一下conf文件夾,這個是存放配置文件的

[root@localhost home]# cd svn/conf
[root@localhost conf]# ls
authz  passwd  svnserve.conf

第三步:配置

authz 是權限控制文件
passwd 是帳號密碼文件
svnserve.conf 是SVN服務配置文件
接下來我們依次修改這3個文件。

2.2. 配置passwd

[root@localhost conf]# vi passwd 
[users]
test1=123456
test2=123456

上面的例子中我們創建了2個用戶,一個test1,一個test2

2.3. 配置authz

[root@localhost conf]# vi authz 
[/]
liuxianan=rw
test1=r
test2=r

=
上面配置的含義是,liuxianan對/home/svn/下所有文件具有可讀可寫權限,test只有只讀權限,除此之外,其它用戶均無任何權限,最後一行
=很重要不能少。

2.3.1. 拓展:使用用戶分組
還是這個文件:

[root@localhost conf]# vi authz
[groups]
group1 = liuxianan
group2 = test1,test2
[/]
@group1 = rw
@group2 = r

  • =
    上面配置中創建了2個分組,分組1的用戶可讀可寫,分組2的用戶只讀。

格式說明:

版本庫目錄格式:

[<版本庫>:/項目/目錄]
@<用戶組名> = <權限>
<用戶名> = <權限>

2.4. 配置svnserve.conf

[root@localhost conf]# vi svnserve.conf 

打開下面的5個註釋

anon-access = read #匿名用戶可讀
auth-access = write #授權用戶可寫
password-db = passwd #使用哪個文件作爲賬號文件
authz-db = authz #使用哪個文件作爲權限文件
realm = /home/svn # 認證空間名,版本庫所在目錄

注意事項:

最後一行的realm記得改成你的svn目錄
打開註釋時切記前面不要留有空格,否則可能有問題(網上說的,我沒有親測)

啓動與停止

[root@localhost conf]# svnserve -d -r /home/svn(啓動)
[root@localhost conf]#killall svnserve(停止)

上述啓動命令中,-d表示守護進程, -r 表示在後臺執行。停止還可以採用殺死進程的方式:

[root@localhost conf]# ps -ef|grep svnserve
root      4908     1  0 21:32 ?        00:00:00 svnserve -d -r /home/svn
root      4949  4822  0 22:05 pts/0    00:00:00 grep svnserve
[root@localhost conf]# kill -9 4908
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章