一:什么是SVN

SVN是subversion的缩写,是一个开放源代码的版本控制系统,通过采用分支管理系统的高效管理,简而言之就是用于多个人共同开发同一个项目,实现共享资源,实现最终集中式的管理

SVN的全称是Subversion,即版本控制系统。它是最流行的一个开放源代码的版本控制系统。作为一个开源的版本控制系统,Subversion管理着随时间改变的数据。这些数据放置在一个中央资料档案库(Repository)中。这个档案库很像一个普通的文件服务器,不过它会记住每一次文件的变动。这样就可以把档案恢复到旧的版本,或是浏览文件的变动历史。Subversion是一个通用的系统,可用来管理任何类型的文件,其中包括程序源码。
SVN采用客户端/服务器体系,项目的各种版本都存储在服务器上,程序开发人员首先将从服务器上获得一份项目的最新版本,并将其复制到本机,然后在此基础上,每个开发人员可以在自己的客户端进行独立的开发工作,并且可以随时将新代码提交给服务器。当然也可以通过更新操作获取服务器上的最新代码,从而保持与其他开发者所使用版本的一致性。 [3]
SVN的客户端有两类,一类是基于Web的WebSVN等,另一类是以Tortoise SVN为代表的客户端软件。前者需要Web服务器的支持,后者需要用户在本地安装客户端,两种都有免费的开源软件供使用。SVN存储版本数据也两种方式:BDB(一种事务安全型表类型)和FSFS(一种不需要数据库的存储系统)。因为BDB方式在服务器中断时,有可能锁住数据,所以还是FSFS方式更安全一点。
SVN工作机制

二:下载SVN服务端和客户端:

​VisualSVN服务端​

svn安装及使用_服务器


选择地址下载

svn安装及使用_客户端_02


​TortoiseSVN 客户端​

svn安装及使用_客户端_03


svn安装及使用_svn_04


SVN工作原理

svn安装及使用_服务器_05


三:开始安装SVN1.安装服务端

svn安装及使用_客户端_06


svn安装及使用_svn_07


svn安装及使用_svn_08


svn安装及使用_客户端_09


svn安装及使用_svn_10


开始安装

svn安装及使用_客户端_11

svn安装及使用_svn_12


打开管理工具:

svn安装及使用_svn_13


到此服务端安装完成2.安装客户端

svn安装及使用_服务器_14


svn安装及使用_服务器_15

svn安装及使用_客户端_16

svn安装及使用_svn_17


svn安装及使用_服务器_18


点击右键查看是否有SVN选项

svn安装及使用_客户端_19


安装客户端成功

四:使用并创建资源库和用户

(1)创建用户

svn安装及使用_svn_20


输入用户和密码

svn安装及使用_客户端_21


创建成功

svn安装及使用_服务器_22


(2)创建资源库

svn安装及使用_客户端_23


svn安装及使用_svn_24


svn安装及使用_客户端_25


svn安装及使用_svn_26


svn安装及使用_服务器_27


svn安装及使用_服务器_28


选择权限用户

svn安装及使用_svn_29


svn安装及使用_客户端_30


svn安装及使用_客户端_31


服务器地址: https://jq1223:8443/svn/repository

svn安装及使用_svn_32


创建成功

svn安装及使用_客户端_33


五:svn的几个操作说明

1、Check out(检出):从服务器端取得代码
把服务器资料库里存放的某个项目代码取出来,放到本地主机中,这个动作叫做“check out”。使用具体步骤:进入要安装项目文件的目录中,点击鼠标右键,选择SVN Check out项,然后填写项目的原始路径和安装路径后点击“ok”即可。
2、Update(更新):更新项目代码
以前checkout过的一个项目代码,当服务器上有了更新的代码,或者本地代码损坏或丢失,update可以自动判断本地哪些文件较旧,或者缺少,都会自动更新。当然,你也可以删除掉本地代码,重新check out。使用具体步骤为:在要更新的项目上点击鼠标右键,选择“SVN Update”项即可。
3、Commit(提交):将本地代码上传到服务器
当修改(增加,删除,修改等所有写操作)过本地代码后,这个动做会把新代码提交到SVN。如果本地代码做了修改,不执行commit操作,SVN服务器上是 不会有这个新版本的,也就是说其它人也得不到。对代码做过修改后,应尽快commit。使用具体步骤:在修改完待上传的项目上点击鼠标右键,选择 “SVN Commit”项即可。
4、share Project(共享工程):ecplise中的操作
把一个非svn的工程,上传到svn中。

六:使用客户端访问

svn安装及使用_客户端_34


svn安装及使用_客户端_35


svn安装及使用_客户端_36


访问成功

svn安装及使用_客户端_37


七:测试导入文件

svn安装及使用_svn_38


添加描述

svn安装及使用_服务器_39


导入成功

svn安装及使用_客户端_40


八:资源仓库

SVN资源仓库中有三个非常重要的目录,trunk(主干)、branches(分支)、tags(标签),其作用是:
这三个目录,都是可以存放文件的,只是在功能方面有一些区别(只是约定):
trunk:一般的项目都是基于主干开发的。
branches:分支,一般用于有某些开发功能时,需要基于主干开分支,开发完成后要合并到主干。
tags:标签,项目开发完成后,发布上线时,需要将主干的代码打标签到tags中,一般情况下,tags的内容是只读的。
这三个目录在实际项目开发过程中的应用:

svn安装及使用_服务器_41


拉取

svn安装及使用_客户端_42


svn安装及使用_服务器_43

常见遇到的问题:

1、账号密码忘记了?
找到svn服务端安装路径,打开bin目录下的VisualSVN Server.msc文件
找到账号右击Set Password

2、怎么改变连接的svn服务端地址?
桌面右击选择Repo-brower,在地址栏上输入你要连接的svn服务器地址

3、桌面图标上会出现蓝色问号?
随便打开一个文件夹,点击查看,将隐藏的项目打上对勾,然后桌面会
出现一个.git,把它删掉

4、跟svn连接的文件没有绿色的对号?
解决的步骤:在运行里 输入 regedit 进入 注册表界面,HKEY_LOCAL_MACHINE->SOFTWARE->Microsoft->Windows->CurrentVersion->Explorer->ShellIconOverlayIdentifiers

打开后发现Tortoise 系列(1TortoiseNormal,2TortoiseAdded等)前面有好多项,Tortoise
系列排到了15名之后,难怪不显示。现在的任务就是把它们提到前面了,修改一下它们的名字就好(我是看第一项的前缀是空格,说明空格的字符排序在前面,我
就加了几个空格),我改后的名字如( TortoiseNormal,
TortoiseAdded等),然后关闭再打开注册表,发现Tortoise
系列系列图标已经排到前面了,这时SVN的图标并没有显示,靠,重启Explorer(在 任务管理器 中结束 explorer.exe ,在文件 ->
新建任务 -> 输入explorer,当然可以重启电脑,不过好sb),这样就ok了,SVN图标又出现了。

svn安装及使用_svn_44