1.下载SVN服务器和客户端版本控制软件
2.subversion为服务器端,tortoiseSVN为客户端软件
3.安装完重启电脑
4.桌面右键,看到有SVN checkout和tortoiseSVN选项则表示安装成功
5.新建一个空目录,e:/server
6.进入server目录,右键单击tortoiseSVN--create repository here(建立版本库),弹出一个警告框:the repository was successfully created并创建了conf,db,hooks,locks文件夹 表示成功
7.conf文件夹里有3个文件
authz:版本权限文件
passwd:和用户相关的文件
格式为:用户名=密码 的形式
svnserve.conf:svn的主配置文件
打开svnserve.conf文件
12行 anon-access = read 是对匿名用户的权限配置 默认是匿名用户有读的权利
20行 password-db = passwd 这行须要修改
表示 打开一个接口,容许客户以用户名和密码的形式进行访问
将#去掉使配置生效,保存,配置生效
8.开启服务
打开命令行,输入
svnserve.exe -d -r 版本库目录地址
例如 svnserve.exe -d -r e:/SVNserver
这样这个服务器就能够对外进行访问了
注意 doc界面不能关,不然服务将会中止
模拟远程访问一下
1.上传:
在F盘新建一个目录SVNuser1
进入目录
右键tortoiseSVN--repo-browser浏览
弹出一个对话框 输入 svn://127.0.0.1 点击ok
弹出右一个对话框 点击ok
右键SVN Checkout 点击ok
copy几个文件到目录
右键文件 tortoiseSVN--add添加
图标由?变成 +
右键 SVN Commit 上传
弹出一个对话框,能够输入描述信息 点击ok
弹出一个对话框 输入用户名和密码 ok
ok
文件会变成√表示上传服务器成功
编辑上传过文件,会变成!图标
加锁 右键tortoiseSVN--Get lock
输入用户名密码 ok 加锁成功
解锁 右键tortoiseSVN--Release lock
输入用户名密码 ok 解锁成功
2.下载:
新建一个目录 F:/SVNuser2
进入目录
右键tortoiseSVN--repo-browser
弹出对话框 选择URL ok
能够看到文件列表 表示连接正常
右键 SVN Checkout 检出-第一次下载
点击ok 就能够看到上传到服务器的文件
user2中添加文件user2test.php
右键tortoiseSVN--add
右键SVN Commit
进入user1目录
右键SVN Checkout 变成了 SVN Update 表示更新
3.删除
删除user1中test.php文件
右键SVN Commit
选中删除的文件 ok输入用户名密码 ok 删除
user2文件夹中
SVN Update test.php文件也删除成功
4.历史版本找回
右键tortoiseSVN--update to revision
弹出对话框
选择Revision单选框 输入版本号 ok
5.文件差别
user1新建了一个index.html文件,提交到服务器
user2在user1的基础上进行修改,并提交到服务器
右键tortoiseSVN--Diff with previous version
能够看到以前版本与当前版本之间的差别
6.冲突
user2修改index.html 增长了一句<div>dddddd</div>
user1修改index.html 增长了一句<div>eeeeee</div>
user1先进行提交
user2以后提交,则会提示失败,须要首先更新服务器内容到本地,再从新修改上传
这时候更新到本地会产生一个冲突 文件会有一个!标示
右键tortoiseSVN--edit conflicts 编辑冲突
手动解决冲突
能够在左侧服务器版本点击右键 选择 use this whole file
也能够选择单行右键 use this text block解决冲突
也能够在右侧本身的版本中点击右键相应做出选择
保存
右键tortoiseSVN--Resolved
右键SVN Commit
7.取消记住用户名
若本地记住了SVN的用户名和密码,当须要使用别的帐号时,没法更改帐号,使用如下方法能够切换帐号:
打开C:\Documents and Settings\用户名(管理员是Administrator)\Application Data\Subversion\auth,
删除该文件,而后从新更新即会弹出输入用户名密码的界面,输入用户名密码搞定
服务器端
1.将服务加到自启动中
sc create svnserve binpath= "d:\Subversion\bin\svnserve.exe --service --root e:\SVNserver"
binpath=后边必定要加空格 而后里面内容为安装路径 --service --root 版本库路径
个人电脑--管理--服务里会有一行 svnserve 能够手动启动服务
能够对它进行配置 单击右键--属性--自动启动
2.权限管理
默认匿名用户是能够访问服务器上的文件的并进行下载的,这样不利于安全
打开e:/SVNserve/conf/svnserve.conf
12 行 # anon-access = read 改为
anon-access = none
权限配置
打开e:/SVNserver/conf/auth文件
在[groups]中增长
admin = lampbrother0 =两边要有空格
对目录进行配置
[/]
@admin = rw 组的可读可写权限 lampbrother1 = rw 用户的可读可写权限 * = r 其余用户可读权限 打开e:/SVNserver/conf/svnserve.conf 27 行 # authz-db = authz 默认为不用任何的权限配置 打开注释 改为 authz-db = authz 找到zuthz相关配置进行权限配置 常见图标 √ 表示状态是正常的,如今的版本跟服务器上的版本是一摸同样的 !表示文件同步过服务器后进行过修改,尚未上传到服务器 ?表示新建的文件,服务器还不认识 + 已经添加到管理名单,尚未上传到服务器 锁表示文件加锁