在linux下安裝svn(摘錄+自己的總結(jié))
1.下載subversion和apache的最新src包
2. 新建一個(gè)用戶:svnroot ,以下操作非特別說(shuō)明皆為root用戶操作
#groupadd svn
#useradd svnroot -g svn
#passwd svn
3. 編譯安裝httpd:
//解壓apache2安裝包
# tar xvzf httpd-2.2.3.tar.tar
//進(jìn)入解壓后的目錄
# cd httpd-2.2.3
//配置apache安裝
# ./configure --enable-dav --enable-so --prefix=/usr/local/apache2/
# make
//安裝
# make install
//啟動(dòng)apache服務(wù)
# /usr/local/apache2/bin/apachectl start
//打開瀏覽器http://localhost/如果有測(cè)試頁(yè)"It works!"出現(xiàn)則證明已經(jīng)安裝成功。
??
4. 安裝Subversion
//解壓SubVersion安裝包
?# tar xvzf Subversion-1.4.0.tar.gz
//進(jìn)入解壓后的目錄
# cd Subversion-1.4.0
//配置subversion安裝
#./configure --with-apxs=/usr/local/apache2/bin/apxs --prefix=/usr/local/subversion --with-apr=/usr/local/apache2 --with-apr-util=/usr/local/apache2 --with-ssl --with-zlib --enable-maintainer-mode
# make
//安裝
# make install
//創(chuàng)建庫(kù)文件所在的目錄 (svnroot用戶進(jìn)行下面的操作)
# mkdir /home/svnroot/repository
//創(chuàng)建倉(cāng)庫(kù)"test"
# /usr/local/subversion/bin/svnadmin create /home/svnroot/repository/test
//查看svn是否安裝成功
#? /usr/local/subversion/bin/svnadmin --version
//不讓其他人有該目錄的權(quán)限
# chmod 700 /home/svnroot/repository
?(svnroot用戶操作結(jié)束)
?
5. 修改Apache配置文件
# vi /usr/local/apache2/conf/httpd.conf
?? //找到下列語(yǔ)句,如果沒(méi)有則自行添加
?? LoadModule dav_svn_module modules/mod_dav_svn.so
?? LoadModule authz_svn_module modules/mod_authz_svn.so?
? //在后面添加?
?? <Location /svn>
?? DAV svn
?? SVNParentPath /home/svnroot/repository/ //svn父目錄
?? AuthzSVNAccessFile /home/svnroot/repository/authz.conf //權(quán)限配置文件
?? AuthType Basic //連接類型設(shè)置
?? AuthName "Subversion.zoneyump" //連接框提示
?? AuthUserFile /home/svnroot/repository/authfile //用戶配置文件
?? Require valid-user //采用何種認(rèn)證
?? </Location>
?
//重啟apache
?# /usr/local/apache2/bin/apachectl restart
//打開瀏覽器訪問(wèn)http://localhost/svn/test/,如果有東西顯示就說(shuō)明成功。
??
6. 權(quán)限管理
1)增加用戶
# htpasswd -c /home/svnroot/repository/authfile 用戶名
//第一次設(shè)置用戶時(shí)使用-c表示新建一個(gè)用戶文件。回車后輸入用戶密碼,完成對(duì)用戶的增加
# htpasswd? /home/svnroot/repository/authfile 用戶名(加入新的用戶,就不用-c了)
2)權(quán)限分配
# vi /home/svnroot/repository/authz.conf?
?[groups]
admin=useradmin
devteamcs = useradmin,user1,user2//這里定義了一個(gè)用戶組
[/]//對(duì)所有的項(xiàng)目,所有的用戶都有讀權(quán)限,admin用戶有讀寫權(quán)限
@admin = rw
* = r
[test:/]//對(duì)test項(xiàng)目,
@devteamcs = rw
//?在 /usr/local/apache2/conf/httpd.conf 文件中配置,找到文件中的這兩行:
User daemon
Group daemon
?// 將daemon改為svnroot,組也做相應(yīng)更改,讓apache進(jìn)程以svnroot的身份運(yùn)行
//改完后是這個(gè)樣子
User svnroot
Group svn
//重啟apache
??# /usr/local/apache2/bin/apachectl restart
訪問(wèn)http://localhost/svn/test ,現(xiàn)在需要身份驗(yàn)證,且通過(guò)驗(yàn)證后應(yīng)該可以看到信息
?補(bǔ)充:在xp的環(huán)境下,如果你運(yùn)行著卡巴斯基,可能會(huì)導(dǎo)致無(wú)法訪問(wèn)svn,通常會(huì)報(bào)400 Bad Request錯(cuò)誤
解決辦法是:進(jìn)入卡巴斯基的設(shè)置-->網(wǎng)絡(luò)設(shè)置--->端口設(shè)置,然后從端口列表中去掉80端口即可
再次補(bǔ)充:eclipse有svn的插件,subclipse,安裝路徑為:http://subclipse.tigris.org/update
posted on 2006-09-28 10:18 幸福是把溫暖的槍 閱讀(9254) 評(píng)論(3) 編輯 收藏 所屬分類: linux