SVN有几种方式进行访问,比较常见的是通过自带协议访问(svn://),配置很简单,还有一种就是http协议访问,需要结合apache服务,配置相对繁琐。

安装svn

 yum -y install subversion

创建仓库DEV

mkdir /opt/svn
svnadmin create /opt/svn/DEV

配置用户和权限

1. 增加用户和密码

在/opt/svn/DEV/conf已经有passwd和authz配置文件了,但是如果将来需要建立多个版本库时就不方便了,建议建立统一的passwd和authz配置文件。

vim /opt/svn/passwd

[users]
svndmin =
user1 =
user2 =

2.配置权限和用户分组

vim  /opt/svn/authz
[groups]                           #建立dev和admin两个分组
dev = uesr1,user2
admin = svnadmin [/]                    
@dev = r
@admin = rw
* =                  #表示其它用户没有任何权限 [/]                  #对单个用户授权
user1 = rw
* =

3.配置svnserve.conf

vim /opt/svn/DEV/conf/svnserve.conf

[general]
anon-access = none
auth-access = write
password-db = /opt/svn/passwd
authz-db = /opt/svn/authz
realm = DEV

4.启动和关闭SVN服务

killall svnserve
svnserve -d -r /opt/svn/DEV

测试连接:

svn co svn://localhost/DEV

会提示输入用户名和密码,并下载该版本,至此使用svn协议访问的方式就安装完成。

========================================================================

二、使用Http方式访问

1. 安装apache和openssl和相关模块

yum  install httpd httpd_devel  mod_dav_svn mod_ssl openssl  mod_auth_mysql 

确认安装如下模块:

ls /etc/httpd/modules/|grep svn
mod_authz_svn.so
mod_dav_svn.so

2. 新增http的验证用户

创建http的用户和密码文件,增加用户两个用户

注意第一次使用需要-c,后面再增加用户一定不要增加-c,否则会把以前的用户全删除。

上述需要注意的是:/opt/svn/svn_http_passwd不应该与svn共同使用一个用户文件,原因是httpd与svn用户都是单独的,前者会对用户文件中的密码进行加密,后者则不会加密。authz文件是可以共用的。

3.配置访问的虚拟主机

vim /etc/httpd/conf.d/subversion.conf

LoadModule dav_svn_module     modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /svn>
DAV svn
SVNParentPath /opt/svn/
SVNListParentPath on
AuthType Basic
AuthName "Authorization Realm"
AuthUserFile /opt/svn/svn_http_passwd
AuthzSVNAccessFile /opt/svn/authz
Require valid-user
</Location>

4.重启httpd服务,并进行访问

service httpd restart

http://IP/svn/DEV

三、使用https方式访问

制作证书,得到证书和私钥

参考:

基于openssl的https服务配置

修改:

vim  /etc/httpd/conf.d/ssl.conf

#SSLCertificateFile /etc/pki/tls/certs/localhost.crt
SSLCertificateFile /etc/httpd/ssl/httpd.crt
#SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
SSLCertificateKeyFile /etc/httpd/ssl/httpd.key

vim /etc/httpd/conf.d/subversion.conf

LoadModule dav_svn_module     modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /svn>
DAV svn
SVNParentPath /opt/svn/
SVNListParentPath on
AuthType Basic
AuthName "Authorization Realm"
AuthUserFile /opt/svn/svn_http_passwd
AuthzSVNAccessFile /opt/svn/authz
Require valid-user
SSLRequireSSL
</Location>

重启httpd服务,就可以使用https的方法访问到SVN了

Linux下搭建SVN服务的更多相关文章

  1. 如何在linux下搭建svn服务

    • 安装svn 使用命令 yum install subversion 如果提示上述错误,请以管理员身份运行 使用命令su root 再执行 yum install subversion 2,查看sv ...

  2. Linux下搭建svn服务端

    安装 使用yum安装非常简单: yum -y install subversion (压缩包安装比这麻烦的多) Tortoise本是window下客户端工具,但也可以建仓库,作为服务端.Linux只有 ...

  3. linux下搭建svn本地服务器

    在linux下搭建svn本地服务器可以很好的管理自己的代码,具体过程如下: # mkdir svn_local # cd svn_local  # svnadmin create led_diplay ...

  4. Linux环境搭建SVN服务

    一.准备工作 首先要保证自己的linux电脑能上外网,我这电脑因为是新的,没有配置网络,所以再这块花费了点时间. 1.检查ip信息 >ifconfig 2.检查DNS服务器 >cat  / ...

  5. Linux上搭建SVN服务

    环境:centos7 一.搭建svn服务 1. 安装svn yum -y install subversion 2. 创建一个目录作为svn服务的地址(svn://192.168.0.2:3690 访 ...

  6. Linux下搭建SVN服务器及自动更新项目文件到web目录(www)的方法

    首先搭建SVN服务器 1,安装SVN服务端 直接用apt-get或yum安装subversion即可(当然也可以自己去官方下载安装) sudo apt-get install subversion   ...

  7. linux 下安装svn服务

    鉴于在搭建时,参考网上很多资料,网上资料在有用的同时,也坑了很多人 本文的目的,也就是想让后继之人在搭建svn服务器时不再犯错,不再被网上漫天的坑爹作品所坑害,故此总结 /******开始****** ...

  8. linux 下搭建svn

    Update 程序设计中的“后悔药”——SVN 一.历史起源 1.版本控制软件   答:主要是对源代码版本进行控制与管理 2.版本控制软件起源 CVS:最早期的开源的版本控制软件(开源奇葩) VSS: ...

  9. 在Linux下搭建SVN服务器

    svn不仅仅可以用于程序开发,还可以做很多事情,例如备份文档. CentOS下:安装 这样同一台服务器便可以运行多个svnserver了 检查端口 注:如果修改了svn配置,需要重启svn服务 -j ...

随机推荐

  1. win7下80端口被(Pid=4)占用的解决方法

    首先介绍一种网上普遍的方法,就是查找占据80端口的进程,然后关闭它就行了. 1.运行cmd,然后输入netstat -a -n -o,回车:2.查看开头几行包含0.0.0.0:80的那一行最后的pid ...

  2. Oracle 11gR2中启动Scott用户的方法

    Oracle 中启动 Scott 用户 的方法 , 在 Oracle11gR2, (g 代表‘网络’的意思) 数据库中 Scott 这个用户 安装时是被锁定的,安装 Oracle的时候 ,你可以直接选 ...

  3. java 同步锁方法

    方法一:动态同步锁 class Demo_thread implements Runnable{ public static int sum = 0; public synchronized void ...

  4. jqeury之平移轮播

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. 使用VisualSVN建立SVN Server

    首先去官网下载安装包.http://subversion.apache.org/packages.html找到windows的,选择VisualSVN->VISUALSVN SERVER 双击开 ...

  6. Piggy-Bank

    Piggy-Bank Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Su ...

  7. vim中如何替换

    1) 文件内全部替换:   :%s#abc#123#g (如文件内有#,可用/替换,:%s/abc/123/g)   --注:把abc替换成123   (或者: %s/str1/str2/g 用str ...

  8. Android 内存分析工具 - LogCat GC

    一.GC_Reason 触发垃圾回收的回收的集中原因: 类型 描述 GC_CONCURRENT 内存使用将满时,并发的进行垃圾回收. GC_FOR_MALLOC 当内存已满应用尝试分配内存时会出触发垃 ...

  9. 解决maven项目将model version改成3.0版本问题

    找到项目目录,找到.setting文件 找到org.eclipse.wst.common.project.facet.core.xml文件 修改如下标签 <installed facet=&qu ...

  10. c语言中函数调用的本质从汇编角度分析

    今天下午写篇博客吧,分析分析c语言中函数调用的本质,首先我们知道c语言中函数的本质就是一段代码,但是给这段代码起了一个名字,这个名字就是他的的这段代码的开始地址 这也是函数名的本质,其实也就是汇编中的 ...