1.使用目的
在window 7下装一个svn,供自己学习使用,并能通过MyEclipse等IDE工具连接到本地的svn,开发使用。
2.准备
- window 7 本地安装,学习使用
- subversion1.8.5 服务端
- TortoiseSVN 客户端
3.subversion1.8.5服务端
1.点我下载
2.按步骤安装即可,没什么难度,直接下一步下一步就ok,没其他太多选择,很简单,建议安装在c盘根目录下即可。
3.打开cmd,使用cmd命令创建版本库
cmd命令: svnadmin create c:\SvnRepository (文件位置)
4.成功后c盘中会自动创建一个版本库,目录结构如图
5.conf文件中主要文件及功能介绍,使用文本编辑器可以打开修改
5.1 svnserve.conf:核心配置文件
配置项分为以下5项(需要开启那些功能,把相应的值前的#去掉,并修改值即可):
anon-access 控制非授权用户访问版本库的权限。取值范围为”write”、”read”和”none”。即”write”为可读可写,”read”为只读,”none”表示无访问权限。
作用:控制谁可以访问svn
默认值:read
修改值为:none,表示必须要通过账号和密码才能访问
auth-access 控制授权用户访问版本库的权限。取值范围为”write”、”read”和”none”。即”write”为可读可写,”read”为只读,”none”表示无访问权限。
作用:控制已授权可以访问用户,他的操作权限
默认值:write
修改值:视情况启用或不启用
password-db 指定用户名口令文件名。除非指定绝对路径,否则文件位置为相对conf目录的相对路径。
作用:设置可以访问的用户账号及密码
默认值:passwd(同目录下的用户passwd文件)
authz-db 指定权限配置文件名,通过该文件可以实现以路径为基础的访问控制。除非指定绝对路径,否则文件位置为相对conf目录的相对路径。
作用:设置访问用户的操作权限
默认值:authz(同目录下的用户authz文件)
realm 指定版本库的认证域,即在登录时提示的认证域名称。若两个版本库的
认证域相同,建议使用相同的用户名口令数据文件。
默认值:一个UUID(Universal Unique IDentifier,全局唯一标示)。
5.2 用户名口令文件 passwd
[users]配置段的配置行格式如下:
<用户名> = <口令>
注意:配置行中的口令为未经过任何处理的明文。
例:用户名口令文件conf/passwd的内容如下:
[users]
userA= passwordA
userB= passwordB
……
5.3 权限配置文件(学习中,有经验的朋友可以给点资源学习下,谢谢)
权限配置文件由svnserve.conf的配置项authz-db指定,缺省为conf目录中的authz。该配置文件由一个[groups]配置段和 若干个版本库路径权限段组成。
6.设置用户账号和密码(暂时只设置访问权限,其他的待学习)
修改svnserve.conf文件:
# anon-access = read 改为 anon-access = none
# password-db = passwd 改为 password-db = passwd
# realm = My First Repository 改为 realm = My First Repository
修改passwd文件,即创建访问用户
7.启动subversion服务
7.1 单次启动
使用cmd命令启动: svnserve -d -r C:\SvnRepository(版本库位置),不要关闭cmd,关闭就会结束服务,所以是单次。
7.2 设置随window一起启动(系统服务),完成后,建议重启windows
使用cmd命令启动:
sc create svnservice binpath= "c:\subversion\bin\svnserve.exe --service --root c:\svn" displayname= "Subversion" depend= tcpip start= auto注意:SC 是用于与服务控制管理器和服务进行通信的命令行程序。
(1)参数binPath表示svnserve可执行文件的安装路径
(2)–service参数表示以windows服务的形式运行
(3)–root指明svn repository(svnadmin create 创建的仓库)的位置
(4)displayname表示在windows服务(系统服务)列表中显示的名字
删除服务:
cmd:删除创建的服务 sc delete svnservice
4.TortoiseSVN
svn客户端,百度一下随便下,安装使用也更简单。我在这里提供一下,里面有客户端和中文包。
安装很简单,基本下一步下一步,其中有个中文安装包,也直接双击安装即可,完成后鼠标右键菜单,会出现多出TortoiseSVN 和svn检出两个功能,在TortoiseSVN 选择设置项,设置中文。如图:
5.使用,测试
在c盘创建一个hello文件夹,里面创建一个world.txt文件
结果:
检出:
在任何位置右键使用svn检出功能。
结果:
6.myeclipse连接本地svn服务端
在连接时出现一个问题,myeclipse集成svn插件版本过低,而我的本地svn服务端版本过高,就报了一个number is large than maxlength错误,更换更高版本的svn插件点击下载即可,也可以安装更低版本的本地svn服务端。
7.后话
第一次写这个,参考别人文章期间也遇到很多问题,可能你们在参考我的过程中,也会出现相应的问题,我希望能一个一个去解决问题,别人的都是一种思路参考,实际情况可能会出现偏差。当然有什么问题可以留言,互相学习,我也是新手,在摸索当中,现在肯定在记录过程中会漏掉一些重要的东西,多多百度吧,我也会慢慢修改这篇文章的。