百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程网 > 正文

搭建SVN服务,进行代码管理 svn服务器配置教程

yuyutoo 2024-10-13 09:12 16 浏览 0 评论

安装准备

下载与之相关的软件:

  1. apache2.2.19:http://labs.renren.com/apache-mirror//httpd/httpd-2.2.19.tar.gz
  2. subversion1.6.17:http://subversion.tigris.org/downloads/subversion-1.6.17.tar.gz
  3. subversion-deps1.6.17:http://subversion.tigris.org/downloads/subversion-deps-1.6.17.tar.gz
  4. apr:http://mirror.bjtu.edu.cn/apache//apr/apr-1.4.5.tar.gz
  5. apr-util:http://mirror.bjtu.edu.cn/apache//apr/apr-util-1.3.12.tar.gz

安装编译环境

安装编译依赖的lib

yum -y install gcc openssl-devel expat-devel openssl-devel libxml2-devel

安装

1).安装apr

tar zxvf apr-1.4.5.tar.gz
cd apr-1.4.5
 ./configure
make
make install

2).安装apr-util

tar zxvf apr-util-1.3.12.tar.gz
cd apr-util-1.3.12
./configure --with-apr=/usr/local/apr
make
make install

3).安装 apache

tar zxvf httpd-2.2.19.tar.gz
cd httpd-2.2.19
./configure --prefix=/usr/local/apache2 -enable-dav -enable-so -enable-ssl -enable-maintainer-mode -enable-rewrite --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config
 make
make install

4).安装subversion

tar zxvf subversion-1.6.17.tar.gz
tar zxvf subversion-deps-1.6.17.tar.gz
cd subversion-1.6.17
 ./configure --prefix=/usr/local/subversion --with-apxs=/usr/local/apache2/bin/apxs --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr --with-ssl --with-zlib=/usr/local/lib --without-berkeley-db --enable-maintainer-mode
make
make install

错误提示需要安装expat

下载expat :http://sourceforge.net/project/showfiles.php?group_id=10127

或者通过:

yum install expat* 安装
cd /usr/local
tar -xvzf expat2.tar.gz
cd expat2
./configure
make
make install

/u3/soft/svn/subversion-1.6.12/subversion/libsvn_ra_neon/.libs/libsvn_ra_neon-1.so: undefined refere 错误,解决如下:

编译安装 subversion 出现 undefined reference to `SSL_SESSION_cmp’,发现在安装subversion.1.6.11时,如果对应的neon版本为 neon-0.25.5.tar.gz,就会出现这个错误下载最新版的neon-0.31.2.tar.gz,将其解压到subversion的源码目录中,并改名为neon,再次编译,成功。

验证是否成功

cat /usr/local/apache2/conf/httpd.conf | grep svn

显示以下信息则为正确安装成功:

1 LoadModule dav_svn_module modules/mod_dav_svn.so

2 LoadModule authz_svn_module modules/mod_authz_svn.so

修改配置

  1. 更改apache运行用户(vi /usr/local/apache2/conf/httpd.conf)
User svn
Group svn

如果是安装到具体用户下,可以设置,本安装时是用root安装,使用默认。

  1. svn访问配置
 # Location中的/svn只是个虚目录,用于区别普通的网站访问,
 # 例如url为 http://127.0.0.1/svn/repos,则/svn的部分就会由下述配置去解析。
 # 如果你想在url中使用/svnroot去解析,那么下面的Location配置就变为 <Location /svnroot>
 <Location /svn/>
 #----虚拟目录后要加上"/",否则访问出现403.(bug)
 Dav svn
 SVNListParentPath on
 #----允许在网页上显示svn父目录list --记住,注释不要和配置项写到同一行,否则会出错..
 SVNParentPath "/home/svn/repositories"
 #----/home/svn/repositories 是SVN的父目录
 AuthType Basic
 #----连接类型设置
 AuthName "Subversion Repository"
 #----连接框提示
 AuthUserFile /home/svn/etc/passwd
 #----用户配置文件
 AuthzSVNAccessFile /home/svn/etc/authz
 #----验证
 Satisfy Any
 Require valid-user
 </Location>

参考如下:

  1. 建立用户验证文件(新建用户)
/home/bps/apache/bin/htpasswd -c /home/bps/svn/etc/passwd svn
例:
./htpasswd -bcm /usr/local/subversion/user/oService.user test test
#-c参数表明创建文件sw1.user,若此文件已存在,则不要-c参数
#-m表示用MD5加密协议
#-d 生成密码
#此命令往oService.user里添加用户test,设置其密码为test
建立权限验证文件(vi /usr/local/subversion/permission/oService.perm)
[groups]
group_develop = svn 
[/]
* = r
[oService:/]
@group_develop = rw
* =
 前面有空格报错。
5.创建资源库
/usr/local/subversion/bin/svnadmin create /u3/subversion/repository/oService
6.启动apache
./apachectl start
重启
./apachectl -k restart
6.启动svnserve
svnserve  -d -r /u3/subversion/repository
  1. 测试


相关推荐

.NET 奇葩问题调试经历之3——使用了grpc通讯类库后,内存一直增长......

...

全局和隐式 using 指令详解(全局命令)

1.什么是全局和隐式using?在.NET6及更高版本中,Microsoft引入了...

请停止微服务,做好单体的模块化才是王道:Spring Modulith介绍

1、介绍模块化单体是一种架构风格,代码是根据模块的概念构成的。对于许多组织而言,模块化单体可能是一个很好的选择。它有助于保持一定程度的独立性,这有助于我们在需要的时候轻松过渡到微服务架构。Spri...

ASP.NET程序集引用之痛:版本冲突、依赖地狱等解析与实战

我是一位多年后端经验的工程师,其中前几年用ASP.NET...

.NET AOT 详解(.net 6 aot)

简介AOT(Ahead-Of-TimeCompilation)是一种将代码直接编译为机器码的技术,与传统的...

一款基于Yii2开发的免费商城系统(一款基于yii2开发的免费商城系统是什么)

哈喽,我是老鱼,一名致力于在技术道路上的终身学习者、实践者、分享者!...

asar归档解包(游戏arc文件解包)

要学习Electron逆向,首先要有一个Electron开发的程序的发布的包,这里就以其官方的electron-quick-start作为例子来进行一下逆向的过程。...

在PyCharm 中免费集成Amazon CodeWhisperer

CodeWhisperer是Amazon发布的一款免费的AI编程辅助小工具,可在你的集成开发环境(IDE)中生成实时单行或全函数代码建议,帮助你快速构建软件。简单来说,AmazonCodeWhi...

2014年最优秀JavaScript编辑器大盘点

1.WebstormWebStorm是一种轻量级的、功能强大的IDE,为Node.js复杂的客户端开发和服务器端开发提供完美的解决方案。WebStorm的智能代码编辑器支持JavaScript,...

基于springboot、tio、oauth2.0前端vuede 超轻量级聊天软件分享

项目简介:基于JS的超轻量级聊天软件。前端:vue、iview、electron实现的PC桌面版聊天程序,主要适用于私有云项目内部聊天,企业内部管理通讯等功能,主要通讯协议websocket。支持...

JetBrains Toolbox推出全新产品订阅授权模式

捷克知名软件开发公司JetBrains最为人所熟知的产品是Java编程语言开发撰写时所用的集成开发环境IntelliJIDEA,相信很多开发者都有所了解。而近期自2015年11月2日起,JetBr...

idea最新激活jetbrains-agent.jar包,亲测有效

这里分享一个2019.3.3版本的jetbrains-agent.jar,亲测有效,在网上找了很多都不能使用,终于找到一个可以使用的了,这里分享一下具体激活步骤,此方法适用于Jebrains家所有产品...

CountDownTimer的理解(countdowntomars)

CountDownTimer是android开发常用的计时类,按照注释中的说明使用方法如下:kotlin:object:CountDownTimer(30000,1000){...

反射为什么性能会很慢?(反射时为什么会越来越长)

1.背景前段时间维护一个5、6年前的项目,项目总是在某些功能使用上不尽人意,性能上总是差一些,仔细过了一下代码发现使用了不少封装好的工具类,工具类里面用了好多的反射,反射会影响到执行效率吗?盲猜了一...

btrace 开源!基于 Systrace 高性能 Trace 工具

介绍btrace(又名RheaTrace)是抖音基础技术团队自研的一款高性能AndroidTrace工具,它基于Systrace实现,并针对Systrace不足之处加以改进,核心改进...

取消回复欢迎 发表评论: