您的位置:首页 > 运维架构 > Apache

通过Apache访问svn代码库的配置步骤

2008-03-24 20:29 489 查看
建立svn代码库,可以进行代码的版本控制,对一般用户来讲,如何方便的查看代码库内容,目前的一个解决方案是使用apache来访问svn代码库。通过自己的测试,现将完整的步骤小结如下:

平台:FreeBSD 7.1 rc1

1 安装FreeBSD系统,需要安装ports,具体安装步骤从略。

2 安装apache20

如果不需要使用bdb(bsd数据库)保存代码库,可以简单采取pkg_add的安装方式

# pkg_add -r apache20

如果svn代码库采用bdb存储,需要采用ports安装方式

# cd /usr/ports/www/apache20

# make WITH_BERKELEYDB=db4 install clean

3 安装 svnversion

如果不使用bdb数据库,即使用本地文件系统,按照下面方法编译

# cd /usr/ports/devel/subversion

# make WITH_PYTHON=yes WITH_MOD_DAV_SVN=yes WITHOUT_BDB=yes install clean

如果使用bdb数据库,按照下面方法编译

# cd /usr/ports/devel/subversion

# make WITH_PYTHON=yes WITH_MOD_DAV_SVN=yes install clean

4 建立初始svn代码库(使用本地文件系统)

a 建立组和账户,考虑到安全性与便于管理,代码库使用专门的用户和组来进行管理

# adduser svn # 建立用户svn和组svn

# pw groupmod svn -M www # 把www用户添加到svn组中,以便匿名用户可以通过浏览器访问

b 建立代码库,代码库建立在 /home/svn/bsdlover 目录下

# su - svn # 切换到svn用户

$ mkdir bsdlover # 建立代码库目录

$ svnadmin create /home/svn/bsdlover --fs-type fsfs # 建立根代码库,使用本地文件系统

如果要使用bdb数据库保存代码库,使用下面的命令

$ svnadmin create /home/svn/bsdlover --fs-type bdb

修改代码库权限,可以通过http方式提交代码(目前这里存在一个安全问题,权限控制在后续的补充中完成)

$ chmod -R g+w bsdlover

$ exit # 退出svn用户,回到root用户下

5 配置apache服务器访问svn代码库

a 加载需要的模块

编辑httpd.conf文件,找到下面的4条语句。然后把找到的语句前面的"#"号删除

系统安装时,建议采用先apache,后subversion的顺序。

LoadModule dav_module ...

LoadModule dav_fs_module ...

LoadModule dav_svn_module ...

LoadModule authz_svn_module ... # 这个语句目前没有参加测试,目前是注释掉的

需要注意的是这四个语句在httpd.conf中出现的先后顺序要正确

b 定义svn代码库的具体位置

编辑httpd.conf文件,在文件结尾处追加下面的语句

<Location /bsdlover> # 此处的"/bsdlover"是定义代码库根目录
DAV svn
SVNPath /usr/home/svn/bsdlover # 此处是定义代码库的具体路径
</Location>

c 重新运行apache服务器

# /usr/local/sbin/apachectl restart

如果能在 /var/run 目录下看到 httpd.pid 文件,表示服务器启动成功,这时在浏览器输入
http://localhost
应该可以看到apache的测试页面

6 导入具体的项目到代码库

# su - svn

$ mkdir livecd # 建立一个代码项目存放目录

$ touch livecd/readme.txt # 建议一个文件,用于测试导入效果

$ svn import livecd http://localhost/bsdlover/test -m "Importing of 1st project"

这个语句的作用是把livecd目录下的文件,导入到代码库,项目名称是 test ,-m 后面的字符串是注释

这条语句运行成功与否十分重要,如果成功,表示可以通过apache访问代码库了,而且可写

如果不成功,可以根据提示找到具体的问题所在

7 基本测试

在本机浏览器地址栏上输入

http://localhost/bsdlover
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: