CentOS下使用yum安裝配置和使用svn

安裝說明

系統環境:CentOS-6.3
安裝方式:yum install (源碼安裝容易產生版本兼容的問題)
安裝軟件:系統自動下載SVN軟件

檢查已安裝版本 html

#檢查是否安裝了低版本的SVN
[root@zck /]# rpm -qa subversion
#卸載舊版本SVN
[root@zck modules]# yum remove subversion
安裝SVN
[root@zck modules]# yum install httpd httpd-devel subversion mod_dav_svn mod_auth_mysql
確認已安裝了svn模塊
[root@zck /]# cd /etc/httpd/modules
[root@zck modules]# ls | grep svn
mod_authz_svn.so
mod_dav_svn.so

驗證安裝


檢驗已經安裝的SVN版本信息
[root@zck modules]# svnserve --version
svnserve,版本 1.6.11 (r934486)
編譯於 Jun 23 2012,00:44:03

版權全部 (C) 2000-2009 CollabNet。
Subversion 是開放源代碼軟件,請參閱 http://subversion.tigris.org/ 站點。
此產品包含由 CollabNet( http://www.Collab.Net/) 開發的軟件。

下列版本庫後端(FS) 模塊可用:
* fs_base : 模塊只能操做BDB版本庫。
* fs_fs : 模塊與文本文件(FSFS)版本庫一塊兒工做。
Cyrus SASL 認證可用。

代碼庫建立

SVN軟件安裝完成後還須要創建SVN庫
[root@zck modules]# mkdir -p /opt/svn/repositories
[root@zck modules]# svnadmin create /opt/svn/repositories
執行上面的命令後,自動創建repositories庫,查看/opt/svn/repositories 文件夾發現包含了conf, db,format,hooks, locks, README.txt等文件,說明一個SVN庫已經創建。

配置代碼庫

進入上面生成的文件夾conf下,進行配置
[root@zck modules]# cd /opt/svn/repositories/conf

用戶密碼passwd配置
[root@zck password]# cd /opt/svn/repositories/conf
[root@admin conf]# vi + passwd
修改passwd爲如下內容:
[users]
# harry = harryssecret
# sally = sallyssecret
zhoulf=123456

權限控制authz配置

[root @admin conf]# vi + authz
目的是設置哪些用戶能夠訪問哪些目錄,向authz文件追加如下內容:
#設置[/]表明根目錄下全部的資源
[/]
zhoulf=rw
服務svnserve.conf配置

[root @admin conf]# vi + svnserve.conf

追加如下內容:
[general]
#匿名訪問的權限,能夠是read,write,none,默認爲read
anon-access=none
#使受權用戶有寫權限
auth-access=write
#密碼數據庫的路徑
password-db=passwd
#訪問控制文件
authz-db=authz
#認證命名空間,subversion會在認證提示裏顯示,而且做爲憑證緩存的關鍵字
realm=/opt/svn/repositories

配置防火牆端口
[root@zck conf]# vi /etc/sysconfig/iptables
添加如下內容:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT
保存後重啓防火牆
[root@zck conf]# service iptables restart
啓動SVN
svnserve -d -r /opt/svn/repositories
查看SVN進程
[root@zck conf]# ps -ef|grep svn|grep -v grep
root 12538 1 0 14:40 ? 00:00:00 svnserve -d -r /opt/svn/repositories
檢測SVN 端口
[root@zck conf]# netstat -ln |grep 3690
tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN
中止重啓SVN
[root@zck password]# killall svnserve //中止
[root@zck password]# svnserve -d -r /opt/svn/repositories // 啓動

測試

SVN服務已經啓動,使用客戶端測試鏈接。
客戶端鏈接地址:svn://192.168.15.231
用戶名/密碼: zhoulf/123456
測試建立文件夾等操做。



另附:
java

CentOS下svn的安裝配置和使用
mysql

一,安裝必須的軟件包 linux

        $ yum install subversion
        $ yum install mod_dav_svn

二,基本的SVN服務器配置

        1,新建一個目錄用於存儲SVN全部文件
                # mkdir /home/svn
 
        2,新建一個版本倉庫
                # svnadmin create /home/svn/test
 
        3,初始化版本倉庫中的目錄,導入原始代碼
                若是原代碼已經有svn的相關文件,則切換到原代碼目錄,先刪除這些svn相關的文件和文件夾。假定/home/user/code/src存放源代碼
                # cd /home/user/code/src
                # find ./ -name "*.svn" | xargs rm -rf
                # svn import /home/user/code/src file:///home/svn/test/ -m "init test code"
 
        4,添加用戶
                在/home/svn/test/conf/passwd文件添加形如「username=password"的條目。
                [users]
                admin = adminpass
                user1 = 123456

         5,修改用戶訪問策略
                /home/svn/test/conf/authz記錄用戶的訪問策略:
                        [groups]
                        
                        [test:/]
                        admin = rw
                        user1 = r
                        * =
                        
                        [test:/modue]
                        admin = rw
                        user1 = rw
                        * =
                以上表示admin具備全部的讀寫權限,user1在modue文件夾下可讀可寫,根目錄下只讀。也能夠配置組的權限。
 
        6,修改/home/svn/test/conf/svnserve.conf文件,讓用戶和策略配置生效.
                svnserve.conf內容以下:
                        [general]
                        anon-access = none
                        auth-access = write
                        password-db = passwd
                        authz-db = authz
 
        7,啓動服務器
                # svnserve -d -r /home/svn
 
        8,測試服務器
                # svn co svn://192.168.1.5/test
                按提示先輸入用戶密碼,再輸入svn的用戶名、密碼,就能夠了。
                # cd test
                # vim main.c
                # svn add main.c 
                # svn commit main.c -m "comment"
                Adding         main.c
                Transmitting file data .
                Committed revision 2.  ( 測試提交成功 )

三,配置SVN服務器的HTTP支持(能夠用瀏覽器看代碼)

       1,修改httpd.conf,添加關於SVN服務器的內容
                修改/etc/httpd/conf/httpd.conf。
 
        2,重啓HTTPD服務器
                # service httpd restart
 
        3,用瀏覽器訪問http://192.168.1.5/test

四,可能出現的問題

1. 若是外網不能正常訪問,可能還須要做端口映射,對外網開放3690端口。
    檢查端口是否打開,能夠用命令: telnet xxx.xxx.xxx.xxx 3690

2. 在windows下checkout的時候,若是出現相似如下的錯誤:

緣由是linux下有同名但大小寫不一樣的文件。一種解決辦法是儘可能避免這種狀況,改爲不一樣的名稱。 sql


其它:

linux下安裝配置svn服務
CentOS6.0 下使用yum命令安裝和配置SVN版本庫

shell

相關文章
相關標籤/搜索