文章目录

  • SVN是什么
  • 相关概念
  • 为什么需要SVN
  • SVN的特点
  • TortoiseSVN VisualSVN Subversion 以及 VisualSVN Server的区别
  • 为什么不直接使用Subversion
  • SVN下载
  • SVN服务端安装
  • SVN服务端配置
  • SVN客户端安装
  • 如何验证SVN客户端是否安装成功
  • SVN客户端汉化包的下载、安装
  • 使用SVN客户端连接SVN服务器
  • SVN三大指令
  • SVN常用图标解释

SVN是什么

  • SVN 是 Subversion 的简称,是一个开源的版本控制系统,CVS的接班人,目前绝大多数公司都是用 SVN 作为版本控制软件

相关概念

  • SCM: 全称是 Software Configuration Management,即软件配置管理,意思就是对软件的源代码进行控制与管理

为什么需要SVN

  • SVN 可以用于协作开发、远程开发和版本回退

SVN的特点

  • 操作简单,入门容易,支持跨平台(Windows、Linux、MacOS)

  • 支持版本回退功能(时间机器)

  • 属于 C/S 结构的软件,因此使用 SVN 需要分别安装客户端和服务端

TortoiseSVN VisualSVN Subversion 以及 VisualSVN Server的区别

  • 客户端软件: TortoiseSVN 和 VisualSVN

  • 服务端软件: Subversion 和 VisualSVN Server

  • 从根本上说,TortoiseSVN(内核使用的是 Subversion) 和 VisualSVN 都是 Subversion 的衍生物,是
    为 Subversion 服务的。

  • TortoiseSVN 可以很方便地向服务器提交代码、从服务器下载代码以及查看自己以前提交的代码

  • VisualSVN 是 SVN 的客户端,和 Visual Studio 集成在一起,VisualSVN 是收费的

  • Subversion 是 SVN 的源码库,是一个集成了客户端和服务端的“内核”,相关配置需要手动进行

  • VisualSVN Server 的内核使用的也是 Subversion,它包括 apache、Subversion 和 WMI(用于实现操作界面等),而且其中的很多配置都已经配置好了,比较容易上手,VisualSVN Server 标准版是免费的,企业版是收费的,在安装时可自行选择

为什么不直接使用Subversion

  • 因为 Subversion 比较偏向于底层,我们需要用到的很多东西都没有集成,对于新手来说,使用难度很大

SVN下载

  • 客户端软件下载请点击这里

  • 服务端软件下载请点击这里

SVN服务端安装

说明: 由于软件版本的不一致,安装界面上可能会有些许区别,这里使用的是 VisualSVN-Server-3.8.1-x64

  1. 双击安装文件,点击 Next

  2. 勾选协议,点击 Next

  3. 使用默认选项,点击 Next

  4. 单击 Standard Edition

  5. 选择软件安装位置、仓库位置、端口号以及备份文件位置

  6. 单击 Install

  7. 安装完成,点击 Finish

    如果电脑安装了360或者类似的安全软件,那么在软件安装过程中可能会拦截一些东西,这时只要都选择允许即可

SVN服务端配置

  1. 创建一个项目(以 Shop 为例)
  • 首先在 SVN 服务器端的安装根目录下创建一个公有目录 WebApp 作为项目目录

  • 在 WebApp 目录下创建 Shop 文件夹,作为 Shop 的版本仓库

    注意:

    1. 在 SVN 中没有项目的概念,所有的文件夹都称之为版本仓库,一个项目就是一个仓库

    2. 现在的 Shop 文件夹还仅仅只能称之为一个普通文件夹,还不能称之为版本仓库,因为它还没有和 SVN 服务器产生任何联系,下面要做的就是将这个普通的文件夹转换为版本仓库

  • 创建版本仓库,基本语法如下:

    1. 打开 cmd,输入如下命令(这里的路径名和最后的项目名应和自己电脑上的一致,下同)

      svnadmin create D:\VisualSVN-Server-3.8.1-x64\WebApp\Shop
      
    2. 回车,如果 Shop 文件夹下出现了如下目录,则说明创建版本仓库成功,如果报错,则可以尝试重启电脑,以使指令生效

  1. 启动服务端监管
  • 什么是服务端监管
  1. 对于Apache来说,我们通过在浏览器中输入 http://localhost(或ip地址) 来访问相关的文件,这个过程就叫做服务端监管

  2. 对于 SVN 来说,我们通过在浏览器中输入 svn://localhost(或ip地址) 来访问相关的数据仓库(如Shop仓库),这个过程就叫做服务端监管

  • 如何启动服务端监管

    1. 打开 cmd,输入如下命令:

      svnserve -d -r D:\VisualSVN-Server-3.8.1-x64\WebApp\Shop
      

      说明:

      • -d 表示后台运行
      • -r 表示监管目录
    2. 回车,可以看到光标一直在闪烁,说明指令执行成功

      特别注意:不要关闭当前的 cmd 窗口,如果关闭了,那么监管指令就强行终止了,也就没办法进行数据的连接了

      通过以上指令,我们的 svn://localhost(或ip地址) 就可以直接指向 Shop 版本仓库,也就是说,当我们在浏览器中输入 svn://localhost(或ip地址) 的时候,就可以访问到 Shop 仓库下的相关数据,也即实现了监管

  1. 权限控制:

    • 默认情况下,SVN服务器是不允许匿名用户上传文件到服务端的,所以必须更改项目的相关配置文件

    • 如何更改相关权限

      1. 打开 Shop 文件夹中的 conf 文件夹,可以看到如下文件

      2. 用记事本打开 svnserve.conf 文件,找到 # anon-access = read ,将其更改为 anon-access = write ,然后保存,即将用户的权限由只可读改为可读可写

SVN客户端安装

说明: 由于软件版本的不一致,安装界面上可能会有些许区别,这里使用的是 TortoiseSVN-1.9.7.27907-x64-svn-1.9.7

  1. 双击安装文件,点击 Next

  2. 点击 Next

  3. 选择软件安装位置,然后点击 Next

  4. 点击 Install,直至软件安装完成,最后点击 Finish

如何验证SVN客户端是否安装成功

  • 在桌面点击鼠标右键,如果结果如下图所示,则表示安装成功

SVN客户端汉化包的下载、安装

  1. 下载
  • 点击这里

  • 在打开的页面中往下拉,找到下图所在位置,并下载对应的汉化包(速度可能会比较慢,耐心等待一会)

  1. 安装

    • 双击运行汉化包,点击 Next,等待安装完成,最后点击 Finish即可

    • 安装完成后,在桌面点击鼠标右键,选择 TortoiseSVN --> Settings --> General,然后在右边的 Language 一栏选择简体中文,最后点击确定,再次打开设置界面时,就会发现是中文的了

    • 如果想切换回英文,只需在上一步中将 Language 改为 English 即可

使用SVN客户端连接SVN服务器

  1. 相关说明

    • 首先,我们设想这样一个使用场景:公司在开发项目时,需要把项目部署在 SVN 服务器上,假设这台 SVN 服务器的 IP 地址为 192.168.1.1

    • 以之前的 Shop 为例,当要开发这个项目时,项目经理会把项目相关的配置和初始化工作做好

    • 项目相关的配置也即上面所提到的 SVN 服务端的配置这部分工作

    • 项目的初始化涉及到的有:编写核心框架、编写核心函数库等,项目经理在自己的电脑上完成这些文件的编写后,就会使用 commit 指令将这些文件上传到 SVN 服务器的 Shop 项目中(在使用 commit 命令之前,需要先使用 checkout 指令与服务器建立连接,下面会详细说明)

  2. 项目经理的 checkout(检出)过程

    • 重要说明:

      1. 当项目经理在 SVN 服务器上完成了项目的配置之后,接下来要做的就是在自己的电脑上通过 SVN 客户端与 SVN 服务器建立连接

      2. 无论是项目经理还是程序员,如果想建立与 SVN 服务器的连接并更新数据到本地,第一次的操作都是 checkout

      3. 当项目经理使用 checkout 指令与服务器建立连接后,会从服务器下载一个名为 .svn 的隐藏文件夹到本地,这个文件夹是否出现也是检出成功与否的标志

      4. 在第一次之后,如果还需要下载服务器端的数据到本地,则使用的是 update 指令,而不再是 checkout 指令

      5. 我们把第一次与 SVN 服务器进行连接操作并更新 Shop 项目中的相关数据到本地的过程称之为检出

  • 项目经理 checkout 的步骤:

    1. 首先要启动服务端监管,方法在上面已经介绍过

    2. 假设自己现在是项目经理,在自己电脑中选择一个位置新建一个文件夹,在这里我选择的是 E:\Shop ,然后在 Shop 文件夹下新建一个名为 jingli 的文件夹

    3. 进入 jingli 这个文件夹,在空白处点击鼠标右键,选择 TortoiseSVN --> 版本库浏览器(汉化之后的名称,下同)

    4. 在弹出的窗口中输入如下图所示 URL,这里因为是在本机测试,所以写的是 localhost,如果不是在本机,就写 SVN 服务器的 IP 地址,比如上面提到的 192.168.1.1

    5. 点击确定之后,会弹出如下界面,选中左边栏的条目,用鼠标右键单击,然后在弹出的菜单中单击检出

    6. 在接着弹出的如下两个窗口中都点击确定即可,这时在 jingli 这个文件夹下就会生成一个名为 .svn 的隐藏文件夹,将其显示出来即可看到,这也是我们与 SVN 服务器成功建立连接的标志。至此,项目经理的 checkout 的过程已全部完成

SVN三大指令

  1. 检出(checkout)

    • 前提:必须先启动服务端监管

    • 作用:链接到 SVN 服务器、更新服务端数据到本地

    • 注意:checkout 只在第一次链接时使用一次,以后如果进行更新操作请使用 update 指令,这点在前面已经提到过,这里再强调一次

  2. 提交(commit)

    • 前提:必须先启动服务端监管

    • 作用:提交本地数据到服务器

    • 如何使用 commit 指令

      1. 以项目经理为例,假设项目经理在自己的电脑上(也就是在上面提到的 jingli 这个文件夹下)编写好了项目的需求文档等文件,现在需要把这些文件上传到 SVN 服务器,那么只需在进入 jingli 这个文件夹后,在空白位置单击鼠标右键,然后单击 SVN提交 即可,如下图所示:

      2. 点击 SVN提交 之后,会出现如下窗口,勾选需要上传的文件和目录/文件夹,然后点击确定,若出现下图2所示界面,则代表提交成功

        特别注意:备注信息必须填写


  3. 更新(update)

    • 前提:必须先启动服务端监管

    • 作用:将服务器上的数据下载到本地

    • 使用方法:进入项目文件所在文件夹,在空白处点击鼠标右键,然后点击 SVN更新 ,如果出现如下窗口,则表明更新成功

SVN常用图标解释

  • 如何查看所有图标

    在任一空白处点击鼠标右键 ——> TortoiseSVN ——> 设置 ——> 图标覆盖 ——> 图标集,即可查看所有图标

  • 图标含义解释

    1. 常规图标

      含义:当客户端文件与服务端文件完全同步时,系统显示这个图标

    2. 冲突图标

      含义:当客户端提交的文件与服务端已存在的文件有冲突时,系统显示这个图标

    3. 删除图标

      含义:当服务端数据已删除,那么在客户端的该文件就会显示这个图标

    4. 增加图标

      含义:当我们编写的文件已添加到提交队列,但还没有提交成功时,系统就会显示这个图标

    5. 无版本控制图标

      含义:当我们编写的文件没有添加到上传队列时,系统就会显示这个图标

    6. 修改图标

      含义:当客户端文件有修改但还未提交时,系统就会显示这个图标

    7. 只读图标

      含义:当客户端文件以只读形式存在时,系统就会显示这个图标

    8. 锁定图标

      含义:当服务端数据已锁定,那么客户端文件就会显示这个图标

    9. 忽略图标

      含义:当客户端文件已忽略,不需要进行提交时,就会显示这个图标

SVN下载、安装、配置及使用方法相关推荐

  1. SVN下载,安装,配置,常用操作 svn教程

    首先在百度搜索并下载 TortoiseSVN 推荐从官网下载,软件分为32位和64位版本,下载时请根据自己的系统位数进行下载: 安装过程: 1.下载软件后,双击程序进行安装,点击"Next& ...

  2. svn下载安装与使用教程/方法

    1.官网下载SVN服务器 官网网址:Subversion Server for Windows | VisualSVN Server,为了保证系统运行的稳定性不下载最新版本,点击version his ...

  3. 关于svn的安装配置开启服务过程和 eclipse安装SVN插件的方法

    eclipse安装SVN插件的方法链接:https://www.cnblogs.com/alamps/p/6155963.html svn的安装配置开启服务相关过程: 安装一直下一步cmd中:echo ...

  4. Android Studio新手–下载安装配置–零基础入门–基本使用–调试技能–构建项目基础–使用AS应对常规应用开发

    转自:http://blog.csdn.net/yanbober/article/details/45306483 目标:Android Studio新手–>下载安装配置–>零基础入门–& ...

  5. plsq卸载 删除注册表、_win10操作系统下oracle11g客户端/服务端的下载安装配置卸载总结...

    win10操作系统下oracle11g客户端/服务端的下载安装配置卸载总结 一:前提 注意:现在有两种安装的方式 1. oracle11g服务端(64位)+oracle客户端(32位)+plsql(3 ...

  6. nodejs-CentOS64下载安装配置

    nodejs到底是什么 官方:Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境.Node.js 使用了一个事件驱动.非阻塞式 I/O 的模型,使其轻量又高效.No ...

  7. Day001--Scala中的下载安装配置及下载安装集成开发环境IDEA

    老生常谈,我们学习一门语言之初都会先将其所依赖的环境和包安装好,Scala也不例外,只是Scala不能像Java一样,有一个专门来写它的IDE(eclipse),但我们可以在IDEA(集成开发环境)上 ...

  8. 图片工具GraphicsMagick的下载安装配置使用

    转自:图片工具GraphicsMagick的下载安装配置使用,更优阅读体验:http://www.kongzid.com/ 目录 1.概述 2.下载 2.1 进入官网地址 2.2 进入版本列表页面 2 ...

  9. 虚拟机2012搭建DNS服务器,Windows Server2012 安装配置DNS服务器方法详解

    Windows Server2012 安装配置DNS服务器方法详解 在云服务器 Windows Server2012 上安装配置DNS服务器方法,安装与配置非常简单,在这里写个完整教程方便大家查询 一 ...

  10. Win7下SQLite安装配置与使用方法详解

    Win7下SQLite安装配置与使用方法详解 2014-10-08    分类:数据库.编程开发.首页精华2人评论     来源:aehyok 分享到:更多1 前言 SQLite 是一个软件库,实现了 ...

最新文章

  1. dqn在训练过程中loss越来越大_[动手学强化学习] 2.DQN解决CartPole-v0问题
  2. boost::contract模块实现断言等级的测试程序
  3. 机器学习--机器学习的分类
  4. Circle and Points POJ - 1981(单位圆覆盖最多点)
  5. 关于tensorflow2.0的弊端
  6. mysql 复制数据_MySQL快速复制数据库数据表的方法
  7. 网络基础:NetBIOS
  8. 文本生成系列之预训练模型
  9. ubuntu查看默认python版本_更改Ubuntu默认python版本的两种方法python- Anaconda
  10. 拉格朗日中值定理ξ怎么求_高等数学3.1中值定理
  11. 认识以及安装redis
  12. matlab混合copula,​MATLAB实战—最优Copula函数的选择
  13. 【材料力学】基于Matlab APP Designer 开发的绘制静定梁剪力、弯矩与挠曲线的软件
  14. 计算机考研浙江理工和江苏大学,杭州电子科技大和浙江理工大学这两所大学怎么样?哪所好?...
  15. 科技楼里面有三间计算机教室,中学计算机网络教室管理工作总结
  16. git 提交代码防止尾行序列LF转为CRLF
  17. linux bind日志级别,Bind日志配置。
  18. 在同一个数据集中同时更新多表..............
  19. 51单片机的键盘检测原理
  20. kali中无线密码的破解

热门文章

  1. capture nx2 安装
  2. unity音效插件—— FMOD学习
  3. 新中大财务软件V5.08安装
  4. 理财通 for N9
  5. 2021年安全员-C证(安徽省)考试试卷及安全员-C证(安徽省)试题及解析
  6. 小编详解网络蜘蛛的安全隐患及预防方法
  7. SylixOS学习三—— SylixOS的引导与安装1
  8. Win32写一个极简定时关机软件的全部过程讲解
  9. 数学建模中的整数规划总结及姜启源第4章(1-3)的解析
  10. DEM数据下载、镶嵌等问题