`

SVN服务器安装配置(Windows、Linux)

 
阅读更多

==============Windows安装SVN======================

环境说明:
----------------------------------------------------
windows 2003
svn-win32-1.5.6.zip 解压版

安装
----------------------------------------------------
解压svn-win32-1.5.6.zip,到d:\svn\svn-win32-1.5.6下,安装就完成了。
可选配置环境变量,配置一下吧,在环境变量path中加入D:\svn\svn-win32-1.5.6\bin;

创建版本库

----------------------------------------------------
进入CMD, 输入svnadmin create d:\svn\库名称 ,就创建好了。
d:\svn\库名称\conf是配置文件可添加用户与权限。

遇到问题:

----------------------------------------------------
svnserve.conf:12: Option expected的问题解决方法
为什么会出现这个错误呢,就是因为subversion读取配置文件svnserve.conf时,无法识别有前置空格的配置文件,如:
[general]
### These options control access to the repository for unauthenticated
### and authenticated users. Valid values are "write", "read",
### and "none". The sample settings below are the defaults.
anon-access = read
auth-access = write
像上面的配置文件中,anon-access是顶行的,没问题,而auth-access就存在前置空格,会导致这个错误。

SVN客户端取消记住用户名的方法

---------------------------------------------------
以前为了省事,记住了svn的用户名和密码,现在在同一个服务器上用另外一个用户名取文件,一直提示没有权限,鼠标右键看了一遍也没发现有取消用户名的地方,百度了一下,只能用下面方法搞定。

打开C:\Documents and Settings\用户名\Application Data\Subversion\auth\svn.simple,找出以前记住密码那个文件删掉,然后重新更新即会弹出输入用户名密码的界面,输入用户名密码搞定。

Windows下SVN权限配置说明(一个目录下多库)
----------------------------------------------------
1、 本文档适用于对Subvesion的自带服务svnserve进行权限配置,全部在authz文件中完成。

2、 如果要对含有中文的目录或文件进行管理或分配时,需要将该文件保存为UTF-8格式,微软的记事本保存为UTF-8格式无效,所以不要用。可用如UltraEdit或EditPlus等软件完成,保存时,格式应选择UTF-8 NO BOM。

3、 权限分配时,应遵守从根目录到子目录、从设置最广泛权限到最精细权限、从只读权限到读写权限设置原则,即从根目录开始设置最广泛的访问权限,然后逐步设置下属子目录的访问权限。提示:目录的访问权限既可以分配给组,也可以分配指定用户。
现举例进行说明:
启动服务:服务应指向所有版本库的根目录,本例中为D:\SVN,命令如下:
sc create SVNService binpath= "D:\Subversion\bin\svnserve.exe --service -r D:/SVN" displayname= "SVNService" depend= Tcpip start= auto
项目情况:D盘根目录下有一个文件夹SVN,在该文件夹中有jsyxv3、svntest两个版本库(可以有更多个),这些版本库共享使用同一个权限配置文件,目录结构如下:
D:\SVN
|---jsyxv3 (项目一,子目录略)
|---svntest (项目二,子目录略)
|---authz (共享的权限配置文件)
|---passwd (共享的密码文件)

#=====配置开始=====
#分组:
[groups]
group_admin = wws,aaa,bbb
group_user1 = sj,ccc
group_user2 = sy,dd,eeee
group_user3 = lxt
group_user4 = ss

#设置对根(即SVN)目录下,所有版本库的访问权限
[/]
* = r #所有登录用户默认权限为只读
@group_admin = rw #可以分配给组,该组有读写权限
wws = rw #也可以像这样分配给指定用户

#以下将对各版本库的及其目录进行权限分配
[jsyxv3:/] #设置对jsyxv3版本库中,所有项目的访问权限
* = #未授权用户没有任何权限
@group_user1 = rw

[jsyxv3:/程序管理] #设置对jsyxv3版本库中程序管理目录的访问权限
* = #未授权用户没有任何权限
@group_user2 = rw

[jsyxv3:/项目管理] #设置对jsyxv3版本库中项目管理目录的访问权限
* = #未授权用户没有任何权限
@group_user3 = rw

[svntest:/] #设置对svntest版本库中,所有项目的访问权限
* = #未授权用户没有任何权限
@group_user1 = rw

[svntest:/程序管理] #设置对svntest版本库中程序管理目录的访问权限
* = #未授权用户没有任何权限
@group_user2 = rw
@group_user3 = rw

[svntest:/项目管理] #设置对svntest版本库中项目管理目录的访问权限
* = #未授权用户没有任何权限
@group_user4 = rw
#=====配置结束=====

4、 最后重要提示:
4.1启动的服务与客户端检出的关系:
4.1.1 如果启动的服务指向一个具体的版本库,如红字部分描述:
sc create SVNService binpath= "D:\Subversion\bin\svnserve.exe --service -r D:/SVN/svntest" displayname= "SVNService" depend= Tcpip start= auto
则客户端检出的地址应为:svn://192.168.0.1/
4.1.2 如果启动的服务指向的是多个版本库的父目录,如红字部分描述:
sc create SVNService binpath= "D:\Subversion\bin\svnserve.exe --service -r D:/SVN" displayname= "SVNService" depend= Tcpip start= auto
则客户端检出的地址应为:svn://192.168.0.1/svntest
4.2如果权限管理完成时,对各版本库还未完成导入工作,请记得使用对SVN目录有读写权限的用户身份进行操作,否则有可能会提示操作失败(因为权限不够)。

==============Linux安装SVN======================

一、安装Subversion
yum install subversion进行自动安装

二、安装Apache
yum install httpd

三、创建数据仓库
1.创建数据仓库的目录
mkdir -p /var/subversion/repos #-p的意思是说如果没有父目录建之
2.创建数据仓库
命令格式:svnadmin create d:\svn\库名称
svnadmin create /var/subversion/repos 将自动生成几个文件和目录: /conf、/db、/hooks

四、启动SVN
以Daemon方式运行
svnserve -d -r /var/subversion/repos ,默认端口3690,默认情况下可匿名访问

注:未加入开机自启动。

五、检查端口
netstat -ntlp|grep 3690

六、配置
在进行源代码管理时,为了安全起见,需要对用户的权限进行控制。
主要通过三个配置文件来实现:svnservice.conf、passwd、authz。
第一个文件指明是否需要进行访问控制。
第二个文件存放用户帐号信息。
第三个文件存放用户的访问权限。
1.打开svnserve.conf文件,

auth-access=write前面的#号去掉,使受权用户可以进行“写”操作。

anon-access = none # 使非授权用户无法访问。
2.把password-db=passwd前面的#号去掉,表明密码文件为当前目录下的passwd文件
3.把auth-db=authz前面的#号去掉,表明用户访问权限文件为当前目录下的authz文件
4.打开passwd文件,在末行添加需要的帐号,比如:test=123456
5.打开authz文件,在[/]一行下面添加test=rw,表明数据仓库的根目录下的所有目录,test都可进行读写操作
6.再添加一行*=r,表明其他帐号可以进行只读操作
7.在该文件中还可以为用户分组,添加到[groups]下面,比如:admin=sinboy,others=u1,u2
8.还可以对根目录下的子目录进行具体的权限控制,只需要添加相应目录,比如:
[/web]
u1=rw
*=
表明web子目录只允许u1帐号进行读写操作,禁止其他帐号访问

它的缺点是:
1.对外提供服务时,有可能受到防火墙的阻隔,造成服务无法访问
2.并且它的密码文件是明文显示,没有进行MD5加密,存在安全隐患
3.只能启动一个数据仓库,如果想要创建多个数据仓库,必须启动多个svnserve服务进程

分享到:
评论

相关推荐

    ubuntu下SVN服务器安装配置

    ubuntu下SVN服务器安装配置 标签: ubuntu svn it 分类: sys-linux/windows 一、SVN安装 1.安装包 $ sudo apt-get install subversion 2.添加svn管理用户及subversion组 $ sudo adduser svnuser $ sudo addgroup...

    Linux或Ubuntu下SVN服务器自动发送邮件配置

    需要注意的是如果该文件是在windows下创建的,在拷贝到Ubuntu或Linux环境下需要转换格式,可使用dos2unix进行转换。 2.安装Authen::SASL模块 因为Perl通过SMTP发送邮件,其中SMTP验证的时候需要Authen::SASL模块。 ...

    SVN服务器在Linux上的安装和配置

    本文描述如何在Windows平台上安装和配置Subversion,主要包括: 1)Subversion和Apache整合服务器的安装和配置; 2)Subversion的认证和授权; 3)不支持Berkeley DB,只支持FSFS。

    Linux下搭建svn服务器详解

    Linux下搭建svn服务器详解,很实用,并有讲解windows同步配置svn客户端。

    详解Linux服务器配置——搭建SVN服务器

    虽然在windows上搭建SVN很简单,但是效能却不高,这当然是和linux相比了,本篇文章主要介绍了Linux服务器配置——搭建SVN服务器,具有一定的参考价值,有兴趣的可以了解一下。

    linux系统下安装svn 服务器.txt

     服务器放在redhatAS4.0上,客户端在windows 2000。  2 软件包  2.1 服务器:  subversion-1.3.2-1.rh90.i386.rpm。可能还会用到其他依赖组件,在我的配置中要用到:apr-0.9.5- 0.2.i386.rpm , neon-0.24.7-...

    SVN 服务器客户端安装包 配置及使用文档

    SVN代码管理是程序开发必须的工具,本资源包含了SVN的服务器及客户端安装包,以及源下载地址的列表内含包括 windows XP ,windows7 ,MAC OS,LINUX等多个系统的客户端及服务器安装程序。另附安装及使用配置文档,绝无...

    SVN服务器几种备份策略.docx

    SVN服务器几种备份策略(本文例子基于FreeBSD/Linux实现,windows环境请自己做出相应修改) 配置管理的一个重要使命是保证数据的安全性,防止服务器应硬盘损坏、误操作造成数据无法恢复的灾难性后果。因此制定一个...

    SVN入门及配置使用

    本资料主要介绍了SVN在Windows系统和在Linux系统下的安装和配置及使用情况,包括SVN客户端和SVN服务器端的配置,非常适合初学者入门

    Linux应用篇之centos7部署svn.docx

    服务器老化验证,且无任何备份机制,存在重大风险,且svn运行在xp系统上,运维管理不方便,为了保护公司重大资产,申请购买了一台新的Linux服务器,将svn代码从windows平台迁移到Linux平台上,除了重新部署svn服务外...

    spring boot 集成 svn 集成 jenkins 实现自动化部署

    在安装之前,我想说明一下本文的目的,jenkins的一款持续集成工具, 它可以做的事情很多,其中一个主要的功能就是简化部署流程 回想一下我们的发布流程: 1.本地把项目打包 2.通过FTP等工具,传输到服务器 3....

    SVN使用手册中文版快速入门

    配置和Windows注册表 配置选项 服务器 config 属性 为什么需要属性? 处理属性 特别属性 svn:executable svn:mime-type svn:ignore svn:keywords svn:eol-style svn:externals svn:special 自动属性设置 Peg和实施...

    svn-钉钉机器人绑定发送消息

    自己打包的一个带环境的svn修改后自动发送消息到钉钉群的exe,因为很多同事的电脑没有配置...svn服务器是windows的,linux的服务器没测试过。文章地址:https://blog.csdn.net/y_renzhendema/article/details/80841626

    SVN使用手册中文版.chm

    配置和Windows注册表 配置选项 服务器 config 属性 为什么需要属性? 处理属性 特别属性 svn:executable svn:mime-type svn:ignore svn:keywords svn:eol-style svn:externals svn:special 自动属性设置 Peg和实施...

    SVN操作手册中文版网页格式

    配置 Windows 服务器 G.3. 用于 TortoiseSVN 的 SSH 客户端工具 G.4. 创建 OpenSSH 证书 G.4.1. 使用 ssh-keygen 创建密钥 G.4.2. 使用 PuTTYgen 创建密钥 G.5. 使用 PuTTY 测试 G.6. 使用 TortoiseSVN 测试 ...

    svnadmin-3.0.5-官方源版.zip

    安装好Svn服务器端好,把Svn Admin部署好,就可以通过web浏览器管理Svn的项目,管理项目的用户,管理项目的权限。使得管理配置Svn简便,再也不需要每次都到服务器手工修改配置文件。 有什么优点 多数据库:Svn项目...

    在Eclipse中使用SVN与CVS代码管理工具管理项目

    svn服务器有2种运行方式:独立服务器和借助apache。2种方式各有利弊。目前业界评价的SVN易用性正在提高。功能:★★★★SVN 的功能除具备 VSS 的功能外,还具有:它的客户机 / 服务器存取方法使得开发者可以从任何...

    使用Subversion进行版本控制(针对 Subversion 1.4)

    选择一个服务器配置 svnserve服务器 svnserve使用SSH通道 Apache 的 HTTP 服务器 推荐 svnserve,一个自定义的服务器 调用服务器 svnserve作为守护进程 使用svnserve通过inetd 通过通道使用svnserve svnserve作为...

    基于Vue+SpringBoot实现的毕业设计(论文)管理系统源代码+数据库+用户手册

    只适用于windows系统启动,Linux服务器部署方式不同 运行失败请先查看电脑运行环境和环境变量的配置情况 附件 文件中包含简单的用户使用手册,请注意查看 安装教程 thesis是后台接口文件 thesis-ui是前端文件 sql是...

    Git权威指南PDF完整版

    Git权威指南 目 录 前 言 第1篇 初识Git 第1章 版本控制的前世和今生/ 2 1.1 黑暗的史前时代/ 2 1.2 CVS—开启版本控制大爆发/ 5 ...34.1.1 Linux下cvs2svn的安装/ 492 34.1.2 Mac OS X 下 cvs2svn 的...

Global site tag (gtag.js) - Google Analytics