網(wǎng)上一搜一大堆案例,但感覺都沒說到點(diǎn)子上,初次搭配總浪費(fèi)很多時(shí)間。
1:官網(wǎng)有詳細(xì)說明,請(qǐng)參考 http://svnbook.red-bean.com/
關(guān)鍵點(diǎn):如果用apache http server(也即通過http訪問svn), 那么:
1) subversion安裝好,再創(chuàng)建一個(gè)repository后,就什么配置也不用做了,不配置authz、不配置passwd、不配置svnserver.conf、不需啟動(dòng)svnserver、一切的一切都只需在apache http server中配置。
2) apache http server安裝好后,建議用yum(redhat)安裝,然后進(jìn)入/etc/httpd/目錄,先貼上配置步驟,再說明
一:進(jìn)入/etc/httpd/conf.d/目錄,打開subversion.conf文件。如圖:


二:放開注釋,配置成你的倉庫地址,
<Location /svn>: 意思為http訪問為:http://hostname/svn
SVNParentPath:顧名思義倉庫父目錄,也即如上圖/home/svn/目錄是所有倉庫的父目錄,里面可添加許多倉庫。它和<Location /svn>是映射關(guān)系,即http訪問/svn,也就是訪問/home/svn
AuthType Basic: 基本認(rèn)證,具體說明見官方
AuthUserFile: 存儲(chǔ)用戶名和密碼的文件
AuthzSVNAccessFile:配置用戶權(quán)限文件,可訪問哪些倉庫、哪些目錄
Require valid-user: 有效用戶
三::wq!后,執(zhí)行
svnadmin create repos --- 創(chuàng)建倉庫repos,名字隨便起, 該命令在/home/svn/父目錄下執(zhí)行,執(zhí)行成功就能看到repos目錄且下面多了conf、db、format、等等文件。
chown -R apache.apache repos ---賦予apache訪問權(quán)限,至關(guān)重要,否則啟動(dòng)server后還是會(huì)無法訪問。
chcon -R -t httpd_sys_content_t repos ---遞歸修改安全上下文的類型配置,至關(guān)重要,否則無法訪問。
四:配置用戶名和密碼,執(zhí)行(任意目錄,只要安裝了apache http server,該命令默認(rèn)提供):
htpasswd -b -c -m /etc/httpd/svnconfig/svn-user.htpasswd 用戶名 密碼 --- htpasswd -b 創(chuàng)建用戶名和密碼直接一行執(zhí)行完畢,不需換行提示輸入密碼, -c 創(chuàng)建新文件 -m 強(qiáng)制MD5加密密碼,信息存儲(chǔ)在svn-user.htpasswd文件里
htpasswd -b -m /etc/httpd/svnconfig/svn-user.htpasswd 用戶名 密碼 ---創(chuàng)建第二個(gè)用戶,就不需要在新建文件了,即去掉了-c
最簡(jiǎn)單方式,看不懂命令,直接輸入htpasswd -h 會(huì)提示幫助說明,按照說明操作即可。
五:配置用戶權(quán)限,執(zhí)行:
在/etc/httpd/svnconfig/目錄里執(zhí)行vim svn-authz.conf,名字隨便起,內(nèi)容很重要,如圖:
限配置.png)
[groups] 表示下面都是組,里面有manager和dev兩個(gè)組
[/] 表示任意目錄,下面是用戶xliu具有rw權(quán)限。
[repos:/]表示repos倉庫下面的任意工程,下面是manager組和dev組的用戶具有rw權(quán)限。
六:一切配置完畢,重啟apache http server 執(zhí)行:
/etc/init.d/httpd restart
訪問:http://hostname/svn/repos即可提示輸入用戶名密碼、進(jìn)入看到如圖:這里的foundation目錄是創(chuàng)建的一個(gè)文件夾而已,如果沒有創(chuàng)建foundation目錄,進(jìn)入則什么也看不到。

七:利用eclipse連接svn導(dǎo)入工程或者通過命令行導(dǎo)入工程即可,具體不再贅述。
說明點(diǎn):
1) 一般svn配置都是在httpd.conf文件里面配置svn模塊,這里為什么直接在/etc/httpd/conf.d/subversion.con里面配置?
答:這是因?yàn)閔ttpd.conf文件里面有一行: Include conf.d/*.conf ,即已經(jīng)默認(rèn)添加subversion.conf配置文件到httpd.conf文件里,所以直接在subversion.conf里面配置,打開suversion.conf看見前三行:

2) 如果配置過程中,出現(xiàn)任何問題,
只需訪問/etc/httpd/logs/error_log 即可看到錯(cuò)誤信息,根據(jù)錯(cuò)誤排查即可,附上命令:tail -100f /etc/httpd/logs/error_log,然后通過http訪問svn,看錯(cuò)誤信息排查
也可訪問/var/log/httpd/error_log查看錯(cuò)誤信息。
至此一切配置完畢!
posted on 2015-02-16 13:47
朔望魔刃 閱讀(306)
評(píng)論(0) 編輯 收藏 所屬分類:
svn