SVN使用教程

SVN使用教程

Alex

2021.11.20

 

目录

一、         SVN安装与注册... 3

1.1安装... 3

1.2注册... 3

二、         SVN介绍与使用... 3

2.1 SVN概念... 3

2.2.1从服务器中心版本库获取数据... 4

2.2.2同步服务器中心版本库... 7

2.2.3编辑源代码... 7

2.2.4 SVN上传服务器中心版本库... 13

2.3SVN版本分支... 15

2.3.1版本分支介绍... 15

2.3.2版本分支源由... 15

2.4 SVN版本合并... 18

2.4.1版本合并介绍... 18

2.5SVN版本间的比较... 20

2.6SVN版本冲突... 21

2.7SVN版本回退... 21

2.8SVN版本拷贝... 21

三、         管理原则... 21

3.1SVN使用原则... 21

3.2SVN使用事项:... 22

四、         实例... 22

4.1举例... 22

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

一、   SVN安装与注册

1.1安装

客户端:

下载Tortoise SVN到本机安装(安装结束后重启软件)

服务端:

IT创建SVN储存库以及配置服务端,设置权限管理客户端以及账号权限等。

1.2注册

根据IT分配的账号权限,使用账号&密码登录SVN界面

 

二、   SVN介绍与使用

2.1 SVN概念

SVN(subversion)是一个开源版本控制系统。subversion将文件存放在中心版本库里,

这版本库像是普通的文件服务器,它可以记录每一次文件和目录的修改情况;可以籍此将数据回复到以前版本,并可以查看数据的更改细节。

Subversion的中心版本库可以通过网络访问,从而使用户可以在不同的电脑上进行操,允许用户在各自的空间里修改和管理同一组数据,可以促进团队协作,使多开发者能并行开发;由于所有工作的版本都已版本化,也不必担心由于错误的更改而影响软件质量,如果出现不正确的更改,只要撤销那一次操作即可。

 

2.2 SVN使用基本流程

1)初次(initial)取出(checkout)repos data,客户端上建立本地工作文件夹(working copy)

2)与服务器中心版本库同步(update),保证将要进行的编辑是最新版本。

3)编辑源代码(包括创建、修改、删除)

4) 与服务器中心版本库同步(update),提交之前先要同步到最新的版本,保证所有在自己之前的有关提交已经在本地有所知悉。(非常重要)

5)解决冲突(resolve conflict)

6)提交(commit),写提交的内容的摘要,便于以后查阅(规范非常重要)

7)每次新的编辑同步服务器中心版本库(继续2步骤)

 

 

2.2.1从服务器中心版本库获取数据

1

 

建立工作拷贝文件

2

 

Checkout操作

3

 

1填写:服务器中心版本库路径

2填写:本地工作文件夹路径

3填写:获取的版本号,一般同步数据使用HEAD revision,一般回溯数据使用Revision

4

 

根据需求选取对应版本,Revision 版本迭代编号是非常重要信息,简称SVN号码

5

 

获取版本数据到放入工作文件夹,

灰色.SVN是本地数据控制(必须保留,不可删除)绿色图标是实际可编辑的数据

 

 

2.2.2同步服务器中心版本库

1

 

2

 

 

2.2.3编辑源代码

->创建/修改/删除

 

 

第1部分:创建

1

 

2

 

3

 

4

 

 

 

第2部分:修改

1

 

2

 

修改后,同步服务器中心版本库后,提交Commit

3

 

填写摘要内容,规范非常重要

点击”OK“

4

 

 

 

第3部分:删除

1

 

2

 

 

 

2.2.4 SVN上传服务器中心版本库

1

 

点击“Commit”

2

 

填写摘要内容,规范非常重要

 

3

 

更新后的最新SVN 版本

4

 

更新后的文件变更成”变更绿色“

 

 

2.3SVN版本分支

2.3.1版本分支介绍

  Subversion 允许并行维护文件与目录分支,允许通过拷贝数据建立分支,分支相互联系,允许从一个分支复制修改到另一个分支,形成日常”混合和比较“不同的开发产品线。

SVN服务器中心版本库又称SVN仓库,SVN仓库推荐的目录结构,

一级目录只有2个,分别是code和doc。其中,code主要用来放置工程的代码。doc主要放置项目生命周期文档和Release code 版本文件。

  二级目录只有3个,Trunk、Branch、Tag。分别存放主干、分支、固化。Trunk目录下直接存放主干工程文件,branch目录下存放分支工程文件,Tag目录下存放Release工程文件。

  三级以下目录是实际文件以及自定义文件。

  从SVN仓库取出数据时,不要把整个仓库数据取出来,而应该只取出二级目录,如 Trunk/branch

2.3.2版本分支源由

将要对项目做基本的重新组织,这需要花费大量时间来完成,会影响项目的所有文件,同时有其他人正在使用或修改同样的文件,此时最佳方案是场景一个分支,或是版本库开发。版本分支允许你保存破坏了一半的工作而不打扰别人,你依然可以选择性与你合作者开发。

 

版本分支要点:

  1. Subversion的分支存在于真实的正常文件系统中,并不是在于另一维度,这些目录只是恰巧保留了额外历史信息。
  2. Subversion 没有内在的分支概念,只有拷贝,当你拷贝一个目录,这个结果目录就是分支。

 

1

 

 

建立Branch/Tag

 

2

 

 

查看Branch/Tag结构

 

 

 

2.4 SVN版本合并

2.4.1版本合并介绍

  Code到达一个比较稳定的阶段,就需要把分支Branch合并到主干Trunk上,或不同branch合并一起

 

SVN合并操作示范

1

 

2

 

3

 

4

 

 

 

2.5SVN版本间的比较

比较方式有二种:时间比较和版本比较(使用较多)

 

1

 

 

 

 

以下功能不常用:

2.6SVN版本冲突

根据实际情况处理与网上搜索(解决方案略)

2.7SVN版本回退

根据实际情况处理与网上搜索(解决方案略)

2.8SVN版本拷贝

根据实际情况处理与网上搜索(解决方案略)

 

 

三、   管理原则

3.1SVN使用原则

1. 通用原则。”Trunk、Branch、Tag、Document“四点结构目录原则。

2. SVN使用过程中以节省内存原则,主干目录code目录上传SVN是源文件(精简),编译链接生成文件不需要上传。不提交本地自动生成文件。

3.提交之前要更新。SVN的更新原则:随时更新,提交更新。每日进行开发工作之前更新代码。避免与前期其他开发者的代码冲突。浏览更新摘要内容,即可以了解别人修改文件内容,又能避免SVN合并导致错误代码原因。

4.原子性提交方式。开发过程中提交SVN,尽量是小单位的编辑,比如一个debug或一个小功能提交,不建议合并提交SVN

5.代码变动以及提交。提交原则:Release提交要慎重,开发阶段要及时。

 

6.对SVN提交信息采用明晰的标注摘要。文件提交时必须要求注释,注明修改信息,规范化。所提交的改变体现给其他开发者。

避免丢失本地后修改后无法恢复。要对文件提交的后果有预判。当完成一个小功能,能够通过编译并且自己测试之后,谨慎提交。提交之前要测试所改变内容应用,测试改变后的效果是否达到预期的目的。

7.明晰自己提交的代码。多次检查提交的内容,提交之前应先做SVN Update 服务器中心版本库(仓库),资源库同步会告诉你提交的内容与资源库之间的差别,确认编辑内容是否是你真正想提交的。不能提交不能通过编译的代码,代码提交之前,首先要确认自己能够在本地编译。

 

3.2SVN使用事项:

a.通用习惯代码使用:UTF-8. 注意提交格式。

b.SVN常用操作:检出(check out)\更新(update)\冲突(confilicte)\添加(add)\摘要(log)\提交(commit)

c.慎用锁定功能

 

 

四、   实例

4.1举例

 

posted @ 2022-07-26 18:21  楚格  阅读(803)  评论(0编辑  收藏  举报