CentOS6.5搭建SVN服务器(Apache+SVN)

简介:

介绍:

    运维朋友都知道,常常会配合开发人员搭建一些他们需要的环境,来提高开发工作效率,他们每天面对的无非就是代码,所以代码的可用性和管理性对开发至关重要的,开发公司每接到一个项目就是一个团队来开发,这样多人同时对一些代码进行修改,会面临一些问题,比如:误删除,对同一文件修改发生冲突,对某些人不让有所有权限,都会造成工作效率降低,要想解决这些问题就需要有一个专业的版本管理系统来集中管理这些代码,这样的版本管理系统很多,我们这次使用的是SVN(subversion),是cvs接班人,是现在开源软件使用最多的版本管理软件,不多说了,开始搭建一个属于自己的版本控制系统吧。

SVN服务器有2种运行方式:独立服务器和借助apache运行(Web/DAV)。

1、安装依赖包

1
[root@localhost ~] # yum install gcc gcc-++ make pcre-devel zlib-devel -y
1
2
3
4
[root@localhost ~] # tar zxvf apr-1.4.6.tar.gz
[root@localhost ~] # cd apr-1.4.6
[root@localhost apr-1.4.6] # ./configure --prefix=/usr/local/apr
[root@localhost ~] # make && make install

1
2
3
4
[root@localhost ~] # tar zxvf apr-util-1.4.1.tar.gz
[root@localhost ~] # cd apr-util-1.4.1
[root@localhostapr-util-1.4.1] # ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
[root@localhost ~] # make && make install

2、安装Apache

下载:http://mirrors.cnnic.cn/apache/httpd/

1
2
3
4
5
[root@localhost ~] # tar zxvf httpd-2.4.7.tar.gz
[root@localhost ~] # cd httpd-2.4.7
[root@localhost httpd-2.4.7] #./configure --prefix=/usr/local/apache --enable-dav --enable-so--enable-rewrite --enable-maintainer-mode --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/
[root@localhost ~] # cp /usr/local/apache/bin/apachectl /etc/init.d/httpd
[root@localhost ~] # sed -i 's/#ServerName.*/ServerName localhost/' /usr/local/apache/conf/httpd.conf

3、安装SVN

SVN需要需要SQLite数据库支持,我们先安装SQLite

下载:http://www.sqlite.org/download.html

1
2
3
4
[root@localhost ~] # tar zxvf sqlite-autoconf-3080200.tar.gz
[root@localhost ~] # cd sqlite-autoconf-3080200
[root@localhostsqlite-autoconf-3080200] # ./configure
[root@localhostsqlite-autoconf-3080200] # make && make install

  #安装SVN

下载:http://subversion.apache.org/download

1
2
3
4
[root@localhost ~] # tar zxvf subversion-1.8.5.tar.gz
[root@localhost ~] # cd subversion-1.8.5
[root@localhostsubversion-1.8.5] # ./configure --prefix=/usr/local/subversion--with-apxs=/usr/local/apache/bin/apxs --with-apr=/usr/local/apr--with-apr-util=/usr/local/apr-util/
[root@localhostsubversion-1.8.5] # make && make install

./confiure报错:这是因为apsx文件没有指定perl执行程序位置

apache/bin/apxs:/usr/local/perl: bad interpreter: No such file or directory

configure: error: no - APXSrefers to an old version of Apache

解决方法:[root@localhost ~]# vi /usr/local/apache/bin/apxs

#!/replace/with/path/to/perl/interpreter–w  #将第一行修改为#!/usr/bin/perl –w即可

  #添加环境变量

1
2
3
[root@localhost ~] # echo "PATH=$PATH/:/usr/local/subversion/bin" >> /etc/profile
[root@localhost ~] # source /etc/profile
[root@localhost ~] # svnserve -version  #显示版本信息表示正常

4、apache与svn整合

#创建组、用户并加载svn库

1
2
3
4
[root@localhost ~] # groupadd svn
[root@localhost ~] # useradd -g svn -s /sbin/nologin svn
[root@localhostsubversion-1.8.5] # cp subversion/mod_dav_svn/.libs/mod_dav_svn.so/usr/local/apache/modules/
[root@localhostsubversion-1.8.5] # cp subversion/mod_authz_svn/.libs/mod_authz_svn.so /usr/local/apache/modules/
1
2
3
4
5
[root@localhost ~] # vi /usr/local/apache/conf/httpd.conf
User svn
Group svn
LoadModule dav_svn_module modules /mod_dav_svn .so
LoadModule authz_svn_module modules /mod_authz_svn .so

  5、配置Web/DAV

  #创建svn仓库

1
2
3
4
5
6
7
8
9
10
11
[root@localhost ~] # mkdir /svn
[root@localhost ~] # svnadmin create /svn/test
[root@localhost ~] # vi /usr/local/apache/conf/httpd.conf
<Location  /svn >          #url访问路径 
DAV svn                  #声明
SVNParentPath  /svn       #svn仓库根目录
AuthType Basic           #基本认证
AuthName  "PleaseLogin"   #登陆时提示信息
AuthUserFile /usr/local/apache/ . passwd   #用户密码文件
Require valid-user       #允许所有用户访问
< /Location >

  #生成passwd文件

1
2
3
[root@localhost ~] # /usr/local/apache/bin/htpasswd -c -m /usr/local/apache/.passwd user1
[root@localhost ~] # chown :svn /usr/local/apache/.passwd
[root@localhost ~] # service httpd restart

  #通过浏览器访问SVN地址,并输入用户名和密码


202417941.png

  6、Windows客户端访问SVN服务器

下载地址:http://tortoisesvn.net/downloads.html

安装很简单,过程略…

连接方式:安装客户端后 --> 右击桌面 --> 点TortoiseSVN --> 选择Repo-breowser --> 输入URL(http://192.168.1.153/svn/test)--> 输入manager组的xiaoming用户和密码登录 --> 登录后右击即可上传和删除文件

至此SVN基本安装配置完成!

目录
相关文章
|
9月前
|
SQL PyTorch 算法框架/工具
Intel技术专家:oneAPI 开放式加速计算|龙蜥大讲堂第114期
这次分享的主题是《oneAPI 开放式加速计算 龙蜥大讲堂第 114 期》的主要内容。主要分为四个部分: 1. 发展背景 2. 什么是 oneAPI 3. 产品应用 4. 总结展望
408 6
|
监控 API
【原创】用Delphi编写系统进程监控程序
【原创】用Delphi编写系统进程监控程序
|
数据采集 数据挖掘 数据库
单细胞分析 | 使用 Monocle 3 进行发育轨迹分析
单细胞分析 | 使用 Monocle 3 进行发育轨迹分析
单细胞分析 | 使用 Monocle 3 进行发育轨迹分析
|
JavaScript 前端开发 Serverless
[译] VueJS 中更好的组件组合方式
[译] VueJS 中更好的组件组合方式
|
网络协议 数据库 网络架构
OSPF 四种设备角色:IR、ABR、BR、ASBR
【4月更文挑战第5天】
3580 2
OSPF 四种设备角色:IR、ABR、BR、ASBR
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的家庭理财系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的家庭理财系统附带文章源码部署视频讲解等
108 0
|
设计模式 Java
23种设计模式,装饰器模式的概念优缺点以及JAVA代码举例
【4月更文挑战第5天】装饰器模式(Decorator Pattern)是一种结构型设计模式,它允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式作为现有类的一个包装。
176 6
|
存储 传感器 Rust
Rust 笔记:Rust 语言中使用 vector(向量)
本文介绍 Rust 语言中的向量,包括向量与数组的区别,向量的相关API的用法等等。
9902 3
|
运维 应用服务中间件 nginx
【运维杂谈】Nginx部署项目,上传文件报错413,如何解决?
【运维杂谈】Nginx部署项目,上传文件报错413,如何解决?
937 0
|
Docker 容器
Docker修改容器ulimit的全部方案及各方案的详细步骤
要修改Docker容器的ulimit(用户资源限制),有以下三种方案,每个方案的详细步骤如下: 方案一:在Dockerfile中设置ulimit 1. 打开您的Dockerfile。 2. 在文件中添加以下命令来修改ulimit: ``` RUN ulimit -n 65536 ``` 这将将文件描述符限制(nofile)设置为65536。 3. 构建镜像:运行以下命令来构建包含新ulimit设置的镜像: ``` docker build -t <image_name> . ``` 将`<image_name>`替换为您想要给镜像起的名称。
1798 0