版本控制工具 svn 二
一、图标
忽略图标 实例
二、版本 回滚
tortoisesvn ——> 版本更新——>一般情况下使用 “显示日子” 回滚
三、版本冲突
版本冲突产生原因
多人先后提交文件,每个人提交的文件内容可能不同,产生冲突
版本冲突解决方案
(1)、提交数据产生冲突,点击“更新”
(2)、产生的冲突数据
(3)、解决冲突
只保留 提交后有冲突的文件,其他文件只作为参考
和同事一块 修改 有冲突的内容 (随便更改别人的数据,是会被挨打的)
更改成功 再一次提交数据到服务端
四、配置多仓库与权限控制
1、配置多仓库
在实际生产环境中,我们可能会同时开发多个项目,那么我们如何进行多项目管理呢!
1)、通过管理project_catalogue 总目录 达到监管所有仓库的目的
开启 server端
(1)、把每一个仓库都创建起来
svnadmin create D:/SVN/SVNSserver/location/ProjectsList/Project_1
(2)、开启 监管 多仓库
svnsever -d(后台运行) -r(监管目录) project_catalogun(总目录路径)
DOS环境下输入 命令 svnserve -d -r D:/SVN/SVNSserver/location/ProjectsList (监管 多仓库)
svnserve -d -r D:/SVN/SVNSserver/location/ProjectsList/Project_name (监管一个仓库)
cline端 链接
project_name项目:svn://localhost/Project_name (服务器 输入ip)
Project_1 项目 : svn://localhost/Project_1 (服务器 输入ip)
Project_2 项目 : svn://localhost/Project_2 (服务器 输入ip)
2、权限控制
怎样做到 来访 有记录呢? 对,可以对用户信息进行登记。
1)、必须开启权限功能
a、了解每个仓库下的 conf 文件夹中的 三个文件
(1)、authz 授权文件,告诉 用户具体权限
(2)、passwd:认证文件,标识当前svn系统中 某个仓库具有哪些用户 和用户的密码
* * 默认情况下,以上两个文件都是禁用的,如需使用,首先要开启以上两个文件
(3)、svnserver.conf:配置文件
b、开启authz(授权文件)passwd(认证文件)步骤如下
(1)、svnserve.conf配置文件 更改配置项
(2)、passwd 认证文件 建立用户
用户名 = 密码
(3)、authz 授权文件
用户分组
用户组设置权限
五、svn服务端 的配置管理
监管指令追加到系统服务中(这里是Windows系统)、这样随着计算机的启动,服务端的仓库也随之启动,不用再输入 DOS 命令手动启动了!是不是很方便!
svnserve -d -r D:/SVN/client/Project_catalogue/Projec_catalogue
1、服务端 配置 自启动服务
利用Windows的sc命令 创建自启动服务
sc create SVNservice binpath= "D:\path_1\path_2\svnserve.exe --service -r D:/path_3/path_4" start= auto
sc create 服务名称 binpath= 空格" 指令生成存放地址\svnserve.exe -- service -r 自启动仓库目录地址” start=空格auto # 表示 自启动
(1)、dos环境下(以管理员身份运行)输入 服务端 仓库 监管 自启动命令
sc create SVNservice binpath= "D:\SVN\client\bin(放在bin目录下)\svnserve.exe --service -r D:\SVN\client\Project_catalogue(项目仓库目录)" start= auto
sc create SvnService binpath= "D:\SVN\SVNSserver\location\bin\svnserve.exe --service -r D:\SVN\SVNSserver\locationProjectsList" start= auto
(2)、Windows操作系统中 手动开启自启动服务
控制面板——>计算机 安全——>管理工具——>服务
2、仓库随着计算机的启动 也启动了起来! 那么怎样停止呢?批处理文件(把停止命令封装在批处理文件中),停止只需要操作批处理文件就好了! ** 批处理文件 以.bat结尾
很简单,对服务器的名领封装进批处理文件中,使用这些命令时只需要双击 批处理文件,省去了在 DOS窗口中输入命令的环节。
六、模拟真实的开发环境
1、svn 钩子程序
** svn服务器用于 程序员提交代码,测试人员测试项目;web服务器用于 项目真实环境 运行; 钩子程序负责 svn端自动同步数据到web服务端。
钩子程序
所谓的钩子 就是与一些版本库事件触发的程序,例如新修订版本的创建,或是为版本化属性的修改。
默认情况下,钩子的子目录(版本仓库/hooks/)中包含各种版本库钩子模板。
钩子模板如下:
这里介绍 post-commit.tmpl 钩子程序 (其他钩子程序的设置请查阅资料)
2、通过批处理指令编写钩子指令
1)、设置svn服务端工作路径 SET SVN="D:\SVN\SVNSserver\location\bin\svn.exe"
2)、指定 web服务器工作路径 SET SVN="D:\SVN\WEB\Project_name"
3)、通过update命令 实时更新数据到 DIR 目录中 SVN update %DIR%
3、具体操作步骤
七、svn中的扩展程序
略!