Chinaunix首页 | 论坛 | 博客
  • 博客访问: 724114
  • 博文数量: 823
  • 博客积分: 10000
  • 博客等级: 上将
  • 技术积分: 5165
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-21 15:52
文章分类

全部博文(823)

文章存档

2011年(1)

2008年(822)

我的朋友

分类: LINUX

2008-08-21 17:47:27


1.suse确保架设好APACHE,可以用YAST中的软件管理完成.

验证成功''itworked''

2.下载svn,[最后复制到/opt/src便于管理]

subversion-1.4.6.tar.gz
subversion-deps-1.4.6.tar.gz

3.解压到相应目录下

tar-zxvfsubversion-1.4.6.tar.gz
tar-zxvfsubversion-deps-1.4.6.tar.gz

4.进入subversion-1.4.6解压后的目录

5.运行.configure建立Makefile文件

./configure--prefix=/opt/svn--with-apxs=/usr/sbin/apxs2

注:参数prefix是指示,svn的安装位置

参数with-apxs:apxs是一个为ApacheHTTP服务器编译和安装扩展模块的工具,用于编译一个或多个源程序或目标代码文件为动态共享对象,使之可以用由mod_so提供的LoadModule指令在运行时加载到Apache服务器.不同版本的apxs可能的位置不同,主要是看http的安装位置.在suse中,apxs2还加上了版本号2,所处的位置在默认的执行文件目录.当不能确定的时候,可以通过find/-name''apx*''来搜索确认.如果没找到.可能是没有安装httpd-dev[在suse中是apache-dev].加上这个参数,将会在apache的安装库中产生二个svn相关的文件

mod_dav_svn.so
mod_authz.svn.so

这二个文件也是svn能过HTTP访问的关键

6.修改./nero/src/Makefile,将CFLAGS=-g-O2改成CFLAGS=-fPIC-g-O2

没有这一步的话,make时报错:/usr/bin/ld:/*/*/subversion-1.4.*/neon/src/.libs/libneon.a(ne_request.o):relocationR_X86_64_32cannotbeusedwhenmakingasharedobject;recompilewith-fPIC
/*/subversion-1.4.4/neon/src/.libs/libneon.a:couldnotreadsymbols:Badvalue

*代表不同安装情况下的目录

7.运行make,makeinstall

8.检查1./opt/svn是否安装.

2.检查/usr/lib64/apache2目录下是否产生那二个必要的so文件.不同的linux根据http安装的目录可能有不同

9.恭喜基本成功

10.在/opt目录下新建一文件夹mkdirsvndata用来当svn服务器的仓库,版本库都放在这下面

11.创建svn用户,假设用户文件也放成SVN安装目录/opt/svn下.取名叫passwd

第一次:htpasswd2-c/opt/svn/passwdrobin

创建了一个叫robin的用户,会提示输入密码

第二次.以后增加用户只要在上一条命令中少输入参数-c.提示此用户文件已存在,不用再创建

12.修改httpd.conf文件,以让apache带动svn一起工作


DAVsvn
SVNParentPath/opt/svndata''指示各版本库的父路径,也即是版本库都放在此目录下
AuthTypeBasic
AuthName''ethinksvn''''随便取个名字
AuthUserFile/opt/svn/passwd''svn用户登录文件
Requirevalid-user''要求登录SVN需要验证


13.apache2ctlrestart重启suse服务器.其它版本命令可能不一样

14./svn出现''ethinksvn''的输入用户名才能登录的框.这个名字就是上面''authname''中

指定的名字.

输入robin,可以正常登录进去[我这里只创建了robin用户].显示''Accessforbidden!''等信息的一个提示权限错误的页面

这个非常正常.svndata目录下面没有任何版本库.

15.在svndata目录下创建版本库

1.用svn提供的命令

#/opt/svn/bin/svnadmincreate/opt/svndata/firtsproject/*创建仓库"firstproject"
#ls/opt/svndata/firstproject/*查看有没有创建好,如果多了一些文件则说明版本库已经创建好

2.我倾向于把/opt/svndata共享出去.在远程,通过小海鬼在此目录下新建项目版本文件夹,然后右击此文件夹来创建版本库

16.现在可以通过/svn/firstproject来查看这第一个版本库了.显示''Revision0:/''

客户端用TortoiseSVN(我叫他小海鬼).

还可以用svn结合bugfree来一起进行用户验证.都是很好的开源,便于团队协作

大功告成.谨以此文.感谢西瓜的鼓励. 下载本文示例代码
阅读(267) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~