大师网-带你快速走向大师之路 解决你在学习过程中的疑惑,带你快速进入大师之门。节省时间,提升效率

WINDOWS下安装配置SVN Server

                             第一章:简介
     SVN是Subversion的缩写,它是一款版本管理软件。所谓版本管理软件,首要的功能就是存储文件。此外,它还记录了这些文件的版本信息,用户可以查看各个版本之间的差异,也可以提取某一文件的任一个历史版本。

      SVN采用C/S结构,即:客户/服务器结构。在客户端,使用的是Tortoise SVN;在服务器端,如果是Windows系统,可以使用Visual SVN。

                                第二章:服务器端安装配置
  2.1  安装
![服务端软件.png](https://upload-images.jianshu.io/upload_images/13553971-bb6c521f33c1b759.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

 ![服务安装一.png](https://upload-images.jianshu.io/upload_images/13553971-d19e8cfe2a3bdc35.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

选择安装软件和工具 第二个选项是只安装工具 复选框是加入命令到PATH环境变量


服务安装三.png

选择安装环境(如果是企业用户选择Enterprise Edition,我们一般选择Standard Edition)


服务安装四.png

Location(软件安装位置)Repositories(项目位置)Server Port(端口,默认)Backups(备份目录)
服务安装五.png
  2.2 配置

        2.2.1启动
        第一次启动界面
   ![第一次启动.png](https://upload-images.jianshu.io/upload_images/13553971-3af8bfddd3599e1a.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

左边图形化信息,右边显示详细信息

       2.2.2 网络配置
![配置属性.png](https://upload-images.jianshu.io/upload_images/13553971-20986feb65885ea0.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
服务器网络配置.png
        2.2.3 新建项目(版本库)
新建项目.png

2.2.4项目类型(文件类型)


项目类型.png

2.2.5项目结构


项目结构.png

2.2.6新建用户
新建用户.png

2.2.7配置属性
项目属性 用户.png
     2.2.8 配置用户权限
用户权限.png
                                      第三章:客户端安装

安装客户端软件Tortoise SVN-1.10.1.28295-x64-svn-1.10.2


安装一.png
                                        第四章:客户端上传(导入import)

4.1选择要导入的文件夹(数据)
导入、导出是以服务器上的版本库为中心的。导入就是将项目文档写入版本库。Windows资源管理器中,鼠标右键单击要导入的文件夹。在弹出菜单中,单击【TortoiseSVN】下的【Import...】菜单项。


导入.png
截图00.png
输入用户和密码
连接用户.png

SVN完成认证后,会将选定的文件夹内容导入到版本库中。

需要说明的是

1、一般只是在项目开始的时候才会用到导入功能;

2、如果待导入的文件或文件夹在版本库内已经存在,则导入会失败。也就是说不能重复导入;

3、目录问题。一次只能导入一个文件夹。假如导入的文件夹为Folder。导入到版本库时不会有Folder这个文件夹;

                                              第五章:客户端下载(导出Export)

右键--->【TortoiseSVN】--->【Export...】
在URL of repository下输入版本库的地址。在Export directory下输入本机存放目录。导出深度有四个选项,分别为:
Fully recursive(深度递归):导出指定目录下的文件、各级子目录以及各级子目录下的文件。也就是全部导出。默认就是选择该项;
Immediate children, including folders(直接子节点,包含文件夹):导出指定目录下的文件和一级子目录,但不导出一级子目录内的文件;
Only file children(仅文件子节点):只导出指定目录下的文件,不导出一级子目录及一级子目录内的文件。
Only this item(仅此项):只导出指定目录。导出后就是一个空目录,没有什么实际意义。
Revision是版本的意思。项目组里任何一人修改了文档,上传到服务器上后都会形成一个新的版本,也就会有一个新的版本号。HEAD revision 表示最新的版本,也可以输入指定的版本号。

配置好后,单击"OK"按钮。


2.png
                                     第六章:检出
 Windows资源管理器中,单击鼠标右键。在弹出菜单中,单击【SVN Checkout...】菜单项。剩下的步骤与导出大致相同。

版本库的版本问题:
既然有导出功能了,还要检出做什么呢?因为与导出不同,检出的文档有两份。一份是用户能看到、修改的文档,被称之为Working Copy,以下简称Copy版;另一份是被隐藏在.SVN文件夹下的文档,被称之为Working BASE,以下简称BASE版。假如有Copy版的文件1.txt,则其对应的BASE版文件为.svn\text-base\1.txt.svn-base。1.txt有两份,被称之为versioned文件。如果用户将2.txt复制到检出目录,则2.txt只有一份,被称之为non-versioned文件。
当用户修改了Copy版的文档,上传到服务器版本库的时候。SVN会比较Copy版和BASE版有什么不同之处,然后只将用户的修改信息上传至服务器。
当用户修改了Copy版的文档,该文档的图标会被改变。这也是SVN比较Copy版和BASE版的结果。
versioned文件有两个版本,因此对它的删除、重命名、移动必须通过SVN来完成,下面几节将介绍这些操作。

6.1删除文件
资源管理器中,鼠标右键单击待删除的文件,单击弹出菜单的【TortoiseSVN】--->【Delete】菜单项即可完成删除操作。


截图01.png

6.2重命名
资源管理器中,鼠标右键单击待重命名的文件,单击弹出菜单的【TortoiseSVN】【Rename...】菜单项。SVN显示如下界面。输入新的文件名后,单击"OK"按钮即可完成重命名操作。
6.3增加文件
检出目录里的non-versioned文件可以增加至BASE,变成versioned文件。
资源管理器中,选中若干项文件或文件夹。鼠标右键单击某一选中项。单击弹出菜单的【TortoiseSVN】【Add...】菜单项。
6.4移动文件
资源管理器中,选中若干项文件或文件夹。移动鼠标至某一选中项,按下鼠标右键不放,移动鼠标至目标文件夹再放开鼠标右键。会弹出SVN右键菜单。
SVN Move……的含义是移动文件。SVN Copy……的含义是复制并增加文件。SVN……and rename 是移动或复制文件之后再重命名。
6.5提交
当用户对检出的文档做了修改后,需要将修改信息上传到服务器的版本库里,以便项目组的其它成员共享。这个上传的过程就是提交。

  Windows资源管理器中,鼠标右键单击要提交的文件夹。在弹出菜单中,单击【SVN Commit...】菜单项。