一、服务器端配置

安装

# yum install -y subversion

yum安装软件,不清除软件包的方法





# vim /etc/yum.conf

keepcache=0





建立svn版本库数据存储根目录svndata及用户、密码权限目录svnpasswd

# mkdir -pv /application/svndata

# mkdir -pv /application/svnpasswd





启动服务

# svnserve -d -r /application/svndata/

验证服务是否正常启动

# ps -ef | grep svn

# lsof -i :3690





建立项目管理库

# svnadmin create /application/svndata/sadoc

# tree /application/svndata/
/application/svndata/
└── sadoc
├── conf
│ ├── authz
│ ├── passwd
│ └── svnserve.conf
├── db
│ ├── current
│ ├── format
│ ├── fsfs.conf
│ ├── fs-type
│ ├── min-unpacked-rev
│ ├── rep-cache.db
│ ├── revprops
│ │ └── 0
│ │ └── 0
│ ├── revs
│ │ └── 0
│ │ └── 0
│ ├── transactions
│ ├── txn-current
│ ├── txn-current-lock
│ ├── txn-protorevs
│ ├── uuid
│ └── write-lock
├── format
├── hooks
│ ├── post-commit.tmpl
│ ├── post-lock.tmpl
│ ├── post-revprop-change.tmpl
│ ├── post-unlock.tmpl
│ ├── pre-commit.tmpl
│ ├── pre-lock.tmpl
│ ├── pre-revprop-change.tmpl
│ ├── pre-unlock.tmpl
│ └── start-commit.tmpl
├── locks
│ ├── db.lock
│ └── db-logs.lock
└── README.txt 11 directories, 28 files

修改配置

# cd /application/svndata/sadoc/conf

# cp svnserve.conf svnserve.conf.bak

修改配置文件

# vim svnserve.conf 





anon-access = none # 关闭匿名访问

auth-access = write

password-db = /application/svnpasswd/passwd

authz-db = /application/svnpasswd/authz





验证修改是否成功

# diff svnserve.conf svnserve.conf.bak 

12,13c12,13

< anon-access = none

< auth-access = write

---

> # anon-access = read

> # auth-access = write

20c20

< password-db = /application/svnpasswd/passwd

---

> # password-db = passwd

27c27

< authz-db = /application/svnpasswd/authz

---

> # authz-db = authz

# cp passwd authz /application/svnpasswd/

# cd /application/svnpasswd

# chmod 700 *

# ll

total 8

-rwx------ 1 root root 1080 Jun 27 15:35 authz

-rwx------ 1 root root  309 Jun 27 15:35 passwd





增加访问svn用户信息

# vim passwd

编辑用户权限

# vim authz

sagroup = jack,xiaoming

[/]

jack = rw

xiaoming = r

@sagroup = r

配置SVN服务器的HTTP支持

svn作为独立服务器或借助apache服务的两种方式,可同时使用。

安装apache服务

# yum install -y httpd

(1)转换SVN服务器的密码

因为svn密码为明文,http不支持明文.需要生成一个webpasswd文件,首次创建new的webpass文件用-c。





#/application/svnpasswd

# htpasswd -c webpasswd jack

根据提示输入密码即可





目录下会多一个webpasswd文件。

注意如果需要,多次加入用户,则用htpasswd -m

#htpasswd -m webpasswd tom

(2)配置apache

# vim /etc/httpd/conf/httpd.conf



Listen 9000



在最后添加如下信息:



<Location /svn>  

DAV svn  

SVNPath /application/svndata/sadoc/

AuthType Basic  

AuthName "svn for project"  

AuthUserFile /application/svnpasswd/webpasswd   

AuthzSVNAccessFile /application/svnpasswd/authz

Satisfy all  

Require valid-user  

</Location>  



(3)重启httpd

#/etc/init.d/httpd restart

出现Unknown DAV provider: svn的错误,是因为系统没有安装mod_dav_svn,它是Subversion与Apache之间的接口(通过它,Apache就可以访问版本库,可以让客户端也使用HTTP的扩展协议 WebDAV/DeltaV进行访问)。



#yum install mod_dav_svn    //使subversion与dav模块通信的功能



#yuminstall mod_authz_svn  //实现权限控制功能



再重启即可。





(4)使用浏览器访问http://192.168.8.39:9000/svn/

继续报错:You don't have permission to access /svn/ on this server

查看日志发现是没有权限访问authz认证文件

# tail /var/log/httpd/error_log 

[Tue Jun 28 19:34:45 2016] [error] [client 192.168.50.18] (13)Permission denied: Failed to load the AuthzSVNAccessFile: Can't open file '/application/svnpasswd/authz': Permission denied



修改认证文件访问权限即可

# chmod 744 /application/svnpasswd/authz

若单独设置端口号,网址为http://IP地址:端口/svn。



二、客户端配置

windows环境客户端

下载并安装TortoiseSVN 1.9.2





svn客户端连接服务器的方式,账号及密码:

svn://192.168.8.39/sadoc

用户名:jack

密码:jack123

windows中存放svn信息的路径:

%APPDATA%\Subversion\auth





svn.simple 里面包含了基本认证方式所需要的认证信息,包括用户名密码信息

svn.ssl.server 里面包含了ssl服务器证书

svn.username 包含了用户名认证的认证信息





下载更新

SVN服务器有新的文件发布或者修改,本地文件库从SVN服务器更新;在本地文件库中,在空白处右键鼠标,点击SVN Update

可以清除配置:

上传更新

从本地文件库有的新的文件发布或者修改需要更新到SVN服务器;在本地文件库中,在空白右键鼠标,点击SVN Commit

linux客户端

从svn库提取数据

# mkdir /svndata

[root@node3 ~]# svn co svn://192.168.8.39/sadoc/ /svndata/ --username=jack --password=jack123

centos6.5环境下svn服务器和客户端配置实用详解的更多相关文章

  1. SVN服务器搭建和配置使用详解

    SVN服务器搭建和使用(一) Subversion是优秀的版本控制工具,其具体的的优点和详细介绍,这里就不再多说. 首先来下载和搭建SVN服务器. 现在Subversion已经迁移到apache网站上 ...

  2. Mac 环境下svn服务器的配置

    Mac 环境下svn服务器的配置 本文目录 • 一.创建代码仓库,用来存储客户端所上传的代码 • 二.配置svn的用户权限 • 三.使用svn客户端功能 在Windows环境中,我们一般使用Torto ...

  3. window系统下SVN服务器和客户端的搭建和使用

    SVN服务器下载地址: http://subversion.apache.org/packages.html 这里我选用VisualSVN server 服务端和 TortoiseSVN客户端搭配使用 ...

  4. Windows环境下svn服务器的安装步骤

    做为一个程序开发人员,就算自己一个人写程序,也应该有一个SVN版本控制系统,以便对开发代码进行有效的管理. 下载SVN服务器 下载地址是:http://subversion.apache.org/pa ...

  5. Windows下SVN服务器及客户端的使用

    原文地址:windows下配置VisualSVN Server服务器 作者:Deem_passion 下载安装文件: 服务端安装文件:VisualSVN-Server-1.6.2 客户端安装文件:To ...

  6. [Linux]Linux下rsync服务器和客户端配置

    一.rsync简介 Rsync(remote sync)是UNIX及类UNIX平台下一款神奇的数据镜像备份软件,它不像FTP或其他文件传输服务那样需要进行全备份,Rsync可以根据数据的变化进行差异( ...

  7. Linux 下 svn 场景实例及常用命令详解

    一.SVN使用场景实例 问题: 在使用svn做为版本控制系统的软件开发中,经常会有这样的需求:在工作复本目录树的不同目录中增加了很多文件,但未纳入版本控制系统,这时如果使用svn add命令一个一个的 ...

  8. win10环境下安装Ubantu双系统(超详解)

    win10环境下安装Ubantu双系统 1.准备工作: 先去ubantu官网(https://www.ubuntu.com/download)去下载ubantu镜像.根据自己的实际情况选择32位的或者 ...

  9. Centos6.4环境下DNS服务器的搭建

    DNS服务器搭建很繁琐吗?给你个简单的招吧! 配置域主服务器 阶段: 1.在bind的主配置文件中添加该域 2.在/var/named中创建该域的zone文件 3.编辑zone文件,添加需要的信息 4 ...

随机推荐

  1. Java -- JDBC 学习--批量处理

    批量处理JDBC语句提高处理速度 当需要成批插入或者更新记录时.可以采用Java的批量更新机制,这一机制允许多条语句一次性提交给数据库批量处理.通常情况下比单独提交处理更有效率JDBC的批量处理语句包 ...

  2. vlc sdl2.0 播放示例

    #include <stdio.h> #include <stdint.h> #include <math.h> #include <stdlib.h> ...

  3. 洛谷P3233 世界树

    题意:给定树上k个关键点,每个点属于离他最近,然后编号最小的关键点.求每个关键点管辖多少点. 解:虚树 + DP. 虚树不解释.主要是DP.用二元组存虚树上每个点的归属和距离.这一部分是二次扫描与换根 ...

  4. theano使用

    一  theano内置数据类型 只有thenao.shared()类型才有get_value()成员函数(返回numpy.ndarray)? 1. 惯常处理 x = T.matrix('x') # t ...

  5. mysql 删除以某字符串开头的表

    Select 'SET FOREIGN_KEY_CHECKS = 0;'unionSelect CONCAT( 'drop table ', table_name, ';' )FROM informa ...

  6. STM32 --- 断言(assert_param)的开启和使用

    默认,STM32的assert_param是没有开启检测,需要 #define USE_FULL_ASSERT 开启后,才能检测形参是否符合要求 // #define assert_param(exp ...

  7. xkcd 单线程下载图片

    Python爬虫视频教程零基础小白到scrapy爬虫高手-轻松入门 https://item.taobao.com/item.htm?spm=a1z38n.10677092.0.0.482434a6E ...

  8. 仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表'Address'中的标识列指

    在有自增长的SQL表格里面插入指定ID的数据的时候,会禁止你操作,提示如题目,解决办法: set identity_insert address on ,,,) set identity_insert ...

  9. oracle解除锁表【原】

    在日常操作中,经常会有不小心被锁表的情况发生 一般造成原因有: 开发人员不小心执行了 for update 查询语句后,没有解锁 不合理代码中开启事务(begin transaction)后,没有关闭 ...

  10. 我的日志分析之道:简单的Web日志分析脚本

    前言 长话短说,事情的起因是这样的,由于工作原因需要分析网站日志,服务器是windows,iis日志,在网上找了找,github找了找,居然没找到,看来只有自己动手丰衣足食. 那么分析方法我大致可分为 ...