版本控制工具 svn 二

Posted hellosecretgarden

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了版本控制工具 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_1path_2svnserve.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:SVNclientin(放在bin目录下)svnserve.exe --service -r D:SVNclientProject_catalogue(项目仓库目录)" start= auto

    sc create SvnService binpath= "D:SVNSVNSserverlocationinsvnserve.exe --service -r D:SVNSVNSserverlocationProjectsList" start= auto

 

    技术分享图片

 

  (2)、Windows操作系统中 手动开启自启动服务

    控制面板——>计算机 安全——>管理工具——>服务

技术分享图片

    技术分享图片

    技术分享图片

 

 

2、仓库随着计算机的启动 也启动了起来! 那么怎样停止呢?批处理文件(把停止命令封装在批处理文件中),停止只需要操作批处理文件就好了!  ** 批处理文件 以.bat结尾

很简单,对服务器的名领封装进批处理文件中,使用这些命令时只需要双击 批处理文件,省去了在 DOS窗口中输入命令的环节。

 

 

技术分享图片

技术分享图片

 

 

六、模拟真实的开发环境

1、svn 钩子程序

技术分享图片

  ** svn服务器用于 程序员提交代码,测试人员测试项目;web服务器用于 项目真实环境 运行;  钩子程序负责 svn端自动同步数据到web服务端。

 

钩子程序

  所谓的钩子 就是与一些版本库事件触发的程序,例如新修订版本的创建,或是为版本化属性的修改。

  默认情况下,钩子的子目录(版本仓库/hooks/)中包含各种版本库钩子模板。

    钩子模板如下:

    技术分享图片

 

这里介绍 post-commit.tmpl 钩子程序 (其他钩子程序的设置请查阅资料)

 

2、通过批处理指令编写钩子指令

  1)、设置svn服务端工作路径    SET SVN="D:SVNSVNSserverlocationinsvn.exe"

  2)、指定 web服务器工作路径  SET SVN="D:SVNWEBProject_name"

  3)、通过update命令 实时更新数据到 DIR 目录中  SVN update %DIR%

3、具体操作步骤

     技术分享图片

 

 

 七、svn中的扩展程序

   略!

 

 

 

 

 

 

 

 

 

技术分享图片技术分享图片技术分享图片技术分享图片技术分享图片技术分享图片技术分享图片技术分享图片技术分享图片
技术分享图片技术分享图片技术分享图片技术分享图片技术分享图片技术分享图片技术分享图片技术分享图片技术分享图片


以上是关于版本控制工具 svn 二的主要内容,如果未能解决你的问题,请参考以下文章

[.net 面向对象程序设计进阶] (23) 团队开发利器优秀的版本控制工具SVN(上)

版本控制系统-Git

版本控制工具 svn

SVN+apache搭建一个版本控制服务器

版本控制工具svn。一个文件夹,里面有.svn的标识文件夹。如何把这些.svn文件夹全部删除。

配置管理工具除了版本控制的工具(如SVN)外,还有其他类型的工具吗?