上次我们讲了Subversion的基本使用,但还只是单机操作,如果要在网络中进行多人协作开发,我们就要使用Web服务器来管理Subversion资源库了。在这里我们选用Apache这个业内最著名服务器的下一代版本Apache 2。

参考资料:Debian-Reference

除安装过程只适用Ubuntu外,别的步骤在其他Linux发行版中都差不多。

(andyluo是我的用户名,请做相应修改)

1、安装Apache2和Subversion模块
在Synaptic里搜索“apache2”, 安装apache2, apache2-common, apache2-utils, apache2-doc(apache文档,推荐安装), libapache2-svn(Apache2的Subversion模块)。
2、创建Subversion库
创建目录:
    $ sudo mkdir -p /var/local/repos
创建Subversion库:
    $ sudo svnadmin create /var/local/repos
将所有权授予Apache(www-data), 使之能对库文件进行读写操作:
    $ sudo chown -R www-data:www-data /var/local/repos
3、配置Apache2(使用基本验证方式,即用户名和密码)
修改/etc/apache2/mods-available/dav_svn.conf, 将对应行改为:
     <Location /repos>
       DAV svn
       SVNPath /var/local/repos
       AuthType Basic
       AuthName "Subversion repository"
       AuthUserFile /etc/subversion/passwd
       <LimitExcept GET PROPFIND OPTIONS REPORT>
         Require valid-user
       </LimitExcept>
     </Location>
可选步骤:添加用户验证文件(添加后,andyluo使用Subversion就不用输入密码了):
    # sudo htpasswd2 -c /etc/subversion/passwd andyluo
4、重启Apache2:
    # sudo /etc/init.d/apache2 restart
5、打开浏览器,访问http://localhost/repos, 就可以看到Subversion库的网页。(当然,现在还没有任何东东,下面我们要导入一些文件)
6、添加/home/andyluo/workspace中的文件到http://localhost/repos下的workspace目录
    $ svn import -m "操作注释" /home/andyluo/workspace http://localhost/repos/workspace
7、checkout http://localhost/repos/workspace 中的文件到/home/andyluo/test
    $ svn checkout http://localhost/repos/workspace /home/andyluo/test

有关Subversion方面的技术,欢迎回复讨论。

Go on, be a tiger


版权所有 罗明
posted on 2005-11-26 15:02 罗明 阅读(7579) 评论(10)  编辑  收藏 所属分类: Server
Comments
  • # re: 在Ubuntu Linux中使用Apache2管理Subversion版本控制系统
    韩冰峰
    Posted @ 2007-05-13 16:09
    hello,最近可好,呵呵,在网上搜“ubuntu subversion”,居然搜到了你的blog呢,因特网真小^__^  回复  更多评论   
  • # re: 在Ubuntu Linux中使用Apache2管理Subversion版本控制系统
    罗明
    Posted @ 2007-05-13 17:16
    呵呵,小冰冰^_^,好久不见,我在这边还好,跟工大差不多的生活啊,你在南开那过的不错吧,啥时候再聚聚~~  回复  更多评论   
  • # re: 在Ubuntu Linux中使用Apache2管理Subversion版本控制系统[未登录]
    dennis
    Posted @ 2007-09-25 10:29
    能不能搞一个 用 mysql 验证的例子,我硬是没有搞成功过。  回复  更多评论   
  • # re: 在Ubuntu Linux中使用Apache2管理Subversion版本控制系统
    renavatior
    Posted @ 2007-10-18 19:43
    看来都是工大人啊
    呵呵
    我今天做项目也要用这个了   回复  更多评论   
  • # re: 在Ubuntu Linux中使用Apache2管理Subversion版本控制系统
    工大路过
    Posted @ 2007-11-26 15:22
    太凑巧,居然是校友的脖子啊!  回复  更多评论   
  • # re: 在Ubuntu Linux中使用Apache2管理Subversion版本控制系统
    kingdomhan
    Posted @ 2008-08-22 14:01
    太巧了的,我也是工大的,最近要在ununtu上装svn,太痛苦了的,我都是按照网上说的做的,但就是装不上,我想问下在装apache2与svn之前还有什么要装的?我装好后说httpd这个进程没有跑起来,是不是还要装这个的?这样的话就还要装apr和apr-util的?我最后是把httpd和apr,apr-util都装起来了的,但还是没有搞定。
    特别想问一下的还是上面那个问题,在装svn与apache2之前还有什么要装的?我是在装好ubuntu就装svn了的
      回复  更多评论   
  • # re: 在Ubuntu Linux中使用Apache2管理Subversion版本控制系统
    kingdomhan
    Posted @ 2008-08-22 14:01
    顺便说一下,我的QQ是120944298,要是前辈看到我的留言了的请务必帮忙一下,谢谢  回复  更多评论   
  • # re: 在Ubuntu Linux中使用Apache2管理Subversion版本控制系统[未登录]
    罗明
    Posted @ 2008-08-22 23:40
    1. 装完和配置好apache2后要重启apache服务(httpd就是apache里的http服务器进程)。文中也提到过,重启apache的命令是:

    # sudo /etc/init.d/apache2 restart

    2. 确认你装的是apache 2版本  回复  更多评论   
  • # re: 在Ubuntu Linux中使用Apache2管理Subversion版本控制系统
    晓灵子
    Posted @ 2011-07-10 18:13
    我在httpd.conf里
    <Location /Phoenix2150>
    DAV svn
    SVNPath /home/clx/Phoenix2150
    AuthType Basic
    AuthName "Subversion Phoenix2150CLX"
    AuthUserFile /home/clx/Phoenix2150/psdfile
    AuthzSVNAccessFile /home/svn/Phoenix2150/accessfile
    Require valid-user
    </Location>
    打开http://192.168.2.128/Phoenix2150
    要求输入用户名密码,我输入的用户名和密码明明是在psdfile和accessfile有配置过,为什么就是不行呢??

      回复  更多评论   
  • # re: 在Ubuntu Linux中使用Apache2管理Subversion版本控制系统
    luo ming
    Posted @ 2011-07-10 19:48
    @晓灵子
    是不是文件权限不对啊?也可以google一下你那显示的错误信息,没准可以找到解决办法  回复  更多评论   

只有注册用户登录后才能发表评论。


网站导航: