svn微型服務器搭建

    在日常的軟件開發中,有的時候需要自己搭建微型svn服務器用於代碼管理,下面是微型svn服務器的搭建方法:

1、創建svn根目錄:

[root@localhost myfec-bic-svn]# mkdir wmp

[root@localhost myfec-bic-svn]# ls

wmp

[root@localhost myfec-bic-svn]#

2、創建svn版本庫

[root@localhost myfec-bic-svn]# svnadmincreate wmp

[root@localhost myfec-bic-svn]# cd wmp/ && ls

conf db  format  hooks locks  README.txt

[root@localhost wmp]#

    創建svn版本庫主要爲了生成svn的配置和管理文件,conf文件夾是svn的配置文件,下面我們需要修改這個目錄下的文件來完成svn微型服務器的搭建。

3、配置文件

1)添加用戶

[root@localhost wmp]# cd conf/

[root@localhost conf]# ls

authz passwd  svnserve.conf

在passwd文件的users下添加用戶 test,具體做法如下:

passwd文件修改前:

[root@localhost conf]# cat passwd

### This file is an example password filefor svnserve.

### Its format is similar to that ofsvnserve.conf. As shown in the

### example below it contains one sectionlabelled [users].

### The name and password for each userfollow, one account per line.

 

[users]

# harry = harryssecret

# sally = sallyssecret

[root@localhost conf]#

passwd文件修改後:

[root@localhost conf]# cat passwd

### This file is an example password filefor svnserve.

### Its format is similar to that ofsvnserve.conf. As shown in the

### example below it contains one sectionlabelled [users].

### The name and password for each userfollow, one account per line.

 

[users]

# harry = harryssecret

# sally = sallyssecret

test = a123456

[root@localhost conf]#

賬戶是test,密碼是a123456,後面可以使用這個賬戶download代碼和代碼提交等。


2)爲用戶配置權限

[root@localhost conf]# vim authz

在authz文件末尾加兩行:

[/]

test = rw


3)修改svnserve.conf文件(配置svn服務器的域)

修改svnserve.conf文件 realm字段爲你的svn版本庫路徑。

auth-access = write

password-db = passwd

authz-db = authz

realm =  /home/test/myfec-bic-svn/wmp/

如果這個字段沒有修改會提示:svn: No repository found in.

4、啓動svn版本庫

 svnserve -d -r /home/test/myfec-bic-svn/wmp/(svn對應的根目錄)

5、驗證是否構建成功

svn co svn://192.168.127.138/ (輸入前面配置的用戶名和密碼)


如果不出意外微型的svn服務器就應經搭建成功了。


6、可能碰到的問題


1)如果在代碼提交後無法顯示svn代碼提交日誌,那麼很有很可能是svn服務器沒有打開log功能,解決方法是:

      修改svnserve.conf文件: anon-access = none(否則查看不到提交日誌)。


2)如果提交沒有權限: 

[qiuyubing@localhost udpfec]$ svn ci

Sending        udpfec/ctcp_impl.h

Sending        udpfec/ctcp_utils.c

Sending        udpfec/ep_pt.c

Transmitting file data ...svn: Commitfailed (details follow):

svn: Can't open file'/home/qiuyubing/myfec-bic-svn/wmp/db/txn-current-lock': Permission denied

svn: Your commit message was left in atemporary file:

svn:   '/home/test/1/3/192.168.35.23/svn-commit.3.tmp'

解決方案:

[root@localhost wmp]# chown -R qiuyb db/

[root@localhost wmp]# chmod 777 -R db/

3) 如果要添加別的svn項目管理:

svnadmin create tcpoverudp


4 )限定不同用戶對不同svn項目的訪問權限:

[/tcpoverudp]

testb1 = rw

testb2 = rw

上面兩個用戶僅能對svn服務器上的test項目訪問。


[/]

testd1 = rw

testd2 = rw

上面兩個用戶僅能對svn服務器上的所有項目都可以訪問。

提示:在修改上面這些配置文件時,所有內容都需要頂格,否則修改無效。










發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章