Linux下jira+Apache2+Subversion+viewvc配置详解(一):subversion版本库搭建

我将这个系统搭建分为两部分:

1、版本控制子系统搭建(apache2+subversion+viewvc)

2、jira子系统搭建(jira4.4+mysql5.1 )



(没有特殊说明,所有操作均在root用户下操作)

一、版本控制子系统搭建(apache2+subversion+viewCvs

1、安装apache2

下载apache2包解压

# tar -xvzf httpd-2.***.tar.gz
    切换到解压目录
    # ./configure --enable-dav --enable-so --prefix=/usr/local/apache2/  /*安装目录*/

    # make

    # make install

2、安装subversion

为subversion建立单独的用户和组

# groupadd svn

# useradd svnroot -g svn

# passwd svnroot


    下载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

查看subversion安装是否成功

# /usr/local/subversion/bin/svnadmin --version

-----------一下操作以svnroot用户进行-----------------

创建版本库所在目录

# mkdir /home/svnroot/repos

创建一个版本库

/usr/local/subversion/bin/svnadmin create /home/svnroot/repos/test

设置版本库的访问权限

# chmod 700 /home/svnroot/repos

-----------svnroot用户操作结束-----------------


3、配置apache,使可以以web方式访问subversion

1)、修改apache配置文件httpd.conf

# vi /usr/local/apache2/conf/httpd.conf

在里面添加如下内容:(note:开始安装的apache里面没有这两个.so文件,在安装subversion后会在 /usr/local/apache2/modules 下载自动添加这两个文件)

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/ //版本库目录
    AuthzSVNAccessFile /home/svnroot/repository/authz.conf //权限配置文件
    AuthType Basic //连接类型设置
    AuthName "Subversion.zoneyump" //连接提示框
    AuthUserFile /home/svnroot/repository/authfile //用户配置文件
    Require valid-user //采用认证方式

</Location>

重新启动apache

# /usr/local/apache2/bin/apachectl restart

访问 http://localhost/svn/test,如果有东西显示说明成功。

2)、权限管理

a、增加用户

# /usr/local/apache2/bin/htpasswd -c /home/svnroot/repository/authfile <username> (第一次添加的时候使用 -c 表示创建文件)

#/usr/local/apache2/bin/htpasswd  /home/svnroot/repository/authfile <username> (过后加入新用户不用 -c 参数)

 b、分配权限

# vi /home/svnroot/repository/authz.conf

加入以下内容:

[groups]
admin=useradmin
devteamcs=svnuser

[/]
@admin = rw
* = r

[test:/]
@devteamcs = rw

保存退出;

修改apache配置文件httpd.conf

# vi /usr/local/apache2/conf/httpd.conf

找到下面两行

User daemon

Group daemon

修改成

User svnroot

Group svn

重启apache。访问 http://localhost/svn/test,现在回出现身份验证,输入你刚才在权限管理里面创建的用户和密码,

通过验证后就可以看到 test 版本库里面的信息了。

但是这个时候你看到的只能是 test 版本库里面最新版本,现在需要使用 viewvc 支持,让我们可以看到版本库里所有的历史变化记录。

4、安装viewvc

viewvc需要python的支持,python的版本在2.0以上(我这里使用的2.7版本);viewvc同时还需要swig的支持。

1)、安装python(如果没有安装)

./configure --prefix=/usr/local/python

      # make

   # make install

2)、安装swig

下载解压swig源文件,转到解压目录里面

# ./configure --with-python=/usr/local/python /* python 安装目录 */

       # make && make install

将swig绑定到subversion:

转到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 swig-py

# make install-swig-py

检验安装是否正确:

运行python,在命令行输入 import svn.repos,如果没有错误说明安装正确。

如果出错的话,需要添加subversion的python building安装路径到PYTHONPATH中,

subversion的python building安装路径在:$your-subversion-path$/lib/svn-python(我的/usr/local/subversion/lib/svn-python)

#echo /usr/local/subversion/lib/svn-python > /usr/local/python/site-packages/subversion.pth

note:$your-subversion-path$/lib/svn-python 下面会有两个目录svn和libsvn,最好也把这两个目录也添加到PYTHONPATH中,如下:

#echo /usr/local/subversion/lib/svn-python/svn >> /usr/local/python/site-packages/subversion.pth

#echo /usr/local/subversion/lib/svn-python/svnlib >> /usr/local/python/site-packages/subversion.pth

3)、安装viewvc

下载解压,切换到源码目录

# ./viewvc-install

安装时会后两个提示,第一个提示是viewvc的安装目,(我的是 /usr/local/viewvc);第一个提示直接enter建跳过就可以了。

简单配置viewvc.conf

# vi /usr/local/viewvc.conf

修改一下内容

svn_roots =                 //在svn_roots = 后面要添加目录让他为空
root_parents = /home/svn
root/repos: svn   //添加库文件所在的目录

4)、配置apache使apache和viewvc协同工作

# vi /usr/local/apache2/conf/httpd.conf

加入如下内容:

1:

ScriptAlias /viewvc /usr/local/viewvc/bin/cgi/viewvc.cgi
    ScriptAlias /query /usr/local/viewvc/bin/cgi/query.cgi

2:

<Directory "/usr/local/viewvc/bin/cgi">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny  
                Allow from all  
        </Directory>

1和2两块内容分别放在什么地方就不用我说了吧!-:)

note:在httpd.conf 中找到 AddHandler cgi-script .cgi,如果配注视掉了,就放开;如果没有找到就在相应的位置加上(具体在<IfModule mime_module>里面)。

重新启动apache。访问 http://localhost/viewvc 这个地址就能看到你的版本库了,里面可以看到你版本库的所有历史记录哟!-:)

至此,subversion所需要的至此环境已经搭建完毕。我会在第二部分里面详细讲解jira的安装(这里的jira版本为4.4.4),以及如何配置jira使其和svn协同工作。


最后附上文中涉及到的软件下载地址:

httpd http://www.apache.org/

subversion :http://subversion.apache.org/

python http://www.python.org/

swig http://www.swig.org/

viewvc http://www.viewvc.org/


注:在安装的时候还有可能遇到库不全的情况,这时需要你自己现在相应库安装上,然后继续我们安装。(需要的库有:prce、zlib、sqlite。这个是根据你系统原有库情况而定的)



  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值