隨筆-20  評論-35  文章-0  trackbacks-0


          1.概述

        1. 下面介紹的安裝配置是我個人的經(jīng)驗,可能與其它很多成功的配置方式有不同,僅次聲明,只供參考。
        2. 采用linux操作系統(tǒng)做為基礎(chǔ)環(huán)境,安裝配置為了介紹簡單,全部操作系統(tǒng)root賬戶操作


          2.環(huán)境準備
          操作系統(tǒng):redhat AS 4或5
          SVN軟件:采用subversion.1.4.0,當然你可以使用其它版本,基本一樣。
                              下載地址:http://subversion.tigris.org/downloads/subversion-1.4.0.tar.gz (官方)
          APACHE:本文采用APACHE2.2 : http://labs.xiaonei.com/apache-mirror/httpd/httpd-2.2.11.tar.gz (官方)
          說明:雖然AS5中自帶了SVN和APACHE,但是我沒有做采用,覺得自己編譯設(shè)置比較穩(wěn)妥和習慣。

          3.安裝APACHE
          為什么要先安裝APACHE?因為我們?nèi)坎捎迷创a編譯方式,而SUBVERSION的編譯要依賴APACHE的相關(guān)組件,所以我先安裝APACHE(當然,這是我的方式,也有其它配置方式的哈)。

          3.1.編譯安裝

          # wget http://labs.xiaonei.com/apache-mirror/httpd/httpd-2.2.11.tar.gz 
          # tar -xzvf httpd-2.2.11.tar.gz
          # cd httpd-2.2.11
          # ./configure -prefix=/usr/local/apache2 -enable-so -enable-dav
          # make
          # make install


          執(zhí)行完成,就安裝完成了.
          3.2.檢查測試
          啟動服務(wù)器
           # /usr/local/apache2/bin/apachectl start
          訪問 http://localhost/,如果顯示:It working 那就OK了

          4.安裝subversion
          因為選擇的是使用apache代理方式訪問subversion,所以編譯前需要指定APACHE的相關(guān)組件LOCATION.

          # wget http://subversion.tigris.org/downloads/subversion-1.4.0.tar.gz
          # tar -xzvf subversion-1.4.0.tar.gz
          # cd subversion-1.4.0
          #./configure -with-apxs=/usr/local/apache2/bin/apxs -with apr=/usr/local/apache2/ -prefix=/usr/local/subversion1.4
          # make
          # make install

          好了,安裝完成,簡單檢查下/usr/local/apache2/modules/下面應該有兩個文件:
          mod_authz_svn.so  mod_dav_svn.so

          如果你安裝AS5操作系統(tǒng)并選擇安裝系統(tǒng)自帶的SVN,請建立連接以便后續(xù)命令操作。

          # ln -s /usr/local/subversion1.4/bin/svn /usr/bin/svn
          # ln -s /usr/local/subversion1.4/bin/svnadmin /usr/bin/svn


          4.創(chuàng)建和設(shè)置SVN倉庫

          我采用的是每個項目一個倉庫的方式管理,采用統(tǒng)一的認證和授權(quán)配置文件(auth.conf,user.conf)管理所有的倉庫。優(yōu)點在于配置管理簡單,每個項目完全獨立,遷移方便;缺點是我還沒有找到好的辦法實現(xiàn)直接瀏覽所有倉庫的方法。廢話不說了,正題~~
           
          所有倉庫的父目錄
          SVNParentPath /data/svnroot/repository/
          所有倉庫的訪問權(quán)限設(shè)置文件
          /data/svnroot/repository/authz.conf
          所有用戶信息
          3.AuthUserFile /data/svnroot/repository/userfile

          5.1.創(chuàng)建SVN用戶組和用戶
          SVN用戶組是SVN倉庫的宿主,SVN用戶才可以對SVN倉庫操作(基本系統(tǒng)安全考慮),也要用于后面APACHE啟動用戶組和用戶。

          # groupadd svn
          # useradd svnroot -G svn -g svn -M

          5.2.創(chuàng)建SVN主倉庫
          創(chuàng)建SVN倉庫主目錄

          # mkdir /data/svnroot/repository
          # cd /data/svnroot/repository

          5.3.創(chuàng)建SVN倉庫
          這里使用testproject作為演示的項目進行操作。

          # cd /data/svnroot/repository
          # svnadmin create testproject

          建立好了項目倉庫,后續(xù)項目倉庫的目錄結(jié)構(gòu)可以后面服務(wù)啟動后,通過客戶端動態(tài)添加和管理,個人覺得這樣比較容易,不用先導入初始化結(jié)構(gòu)。推薦使用小烏龜(TortoiseSVN)。

          5.4.建立用戶和權(quán)限控制文件
          待續(xù)。。



          5.配置APACHE整合Subversion
          主要就是配置APACHE的httpd.conf,使用mod_authz_svn.so  mod_dav_svn.so集成Subversion的功能了。

          LoadModule dav_svn_module     modules/mod_dav_svn.so
          LoadModule authz_svn_module   modules/mod_authz_svn.so
          <VirtualHost *:80>
              ServerAdmin xxxx@gmail.com
              DocumentRoot /data/www/
              ServerName www.xxxx.org
              ErrorLog logs/xxxx.org-error_log
              CustomLog logs/xxxxx.org-access_log common
           
                  <Location /svn>
                   DAV svn
                   SVNListParentPath on
                   SVNParentPath /data/svnroot/repository/
                   AuthzSVNAccessFile /data/svnroot/repository/authz.conf
                   AuthUserFile /data/svnroot/repository/userfile
           
                   AuthType Basic
                   AuthName "qy Subversion repository"
           
                   #<LimitExcept GET PROPFIND OPTIONS REPORT>
                   Require valid-user
                   #</LimitExcept>
                   #Options Indexes FollowSymLinks
                   #AllowOverride None
                   #Order allow,deny
                   #Allow from all
                  </Location>
          </VirtualHost>




        3.  

        4. posted on 2009-05-22 18:07 coolies 閱讀(1174) 評論(0)  編輯  收藏 所屬分類: 配置管理JAVA-Team研發(fā)環(huán)境

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導航:
           
          主站蜘蛛池模板: 榆林市| 额济纳旗| 易门县| 永善县| 东丽区| 汉阴县| 广丰县| 陆河县| 措美县| 武穴市| 麦盖提县| 鄂托克前旗| 页游| 宝坻区| 克什克腾旗| 邵东县| 伊川县| 柳州市| 上饶县| 应城市| 嵊泗县| 太仆寺旗| 闻喜县| 桓台县| 宁河县| 台江县| 兴山县| 耿马| 于都县| 马龙县| 永定县| 台湾省| 同江市| 蒙山县| 双江| 嘉善县| 泉州市| 河源市| 通海县| 拜城县| 元氏县|