SVN用户操作手册

本文介绍了Subversion作为版本控制系统的基本概念,详细讲解了TortoiseSVN客户端的安装过程,并逐步阐述了SVN的各项操作,包括检出、添加文件、提交、更新、删除、版本回溯、加锁解锁、查看日志、合并冲突以及分支管理等,旨在帮助用户掌握SVN在团队协作中的使用方法。
摘要由CSDN通过智能技术生成

SVN用户操作手册

1 什么是Subversion?

Subversion是一个免费开源的版本控制系统(version control system),也就是说,Subversion可以跨越时间对文件和目录,以及它们的修改进行管理,允许回复数据的旧版本,或者检查数据的修改历史。

2 TortoiseSVN客户端安装教程

下载TortoiseSVN下载地址: https://tortoisesvn.net/downloads.html

在这里插入图片描述根据操作系统(32-bits OS、64-bits OS)选择自己需要的版本进行下载,双击TortoiseSVN安装包(如TortoiseSVN-1.12.2.28653-x64-svn-1.9.7.msi)会弹出安装界面,一直点击nest,进入下一步双击TortoiseSVN安装程序,弹出安装页面,点击Next
在这里插入图片描述勾选‘I agree the terms in the License Agreement’,点击Next
在这里插入图片描述
这里别的我们不动,如果想改变安装路径,可以更换安装路径,然后点击next:在这里插入图片描述
点击install:
在这里插入图片描述
点击Finish:
在这里插入图片描述

安装完成后在桌面点击鼠标右键进行查看,有此标志则代表安装成功:

在这里插入图片描述

3 SVN 操作
3.1 SVN Ckeckout(检出)

假如项目已经在服务器的远程仓库里,现在要做的就是把它检出(checkout)到本地,首先创建一个空文件夹,在空文件夹内右键,点击SVN Checkout。

填写版本库URL地址,确定检出到本地的目录,确认深度默认为全递归(Fully recursive),检出版本默认为最新版本(HEAD revision),也可以指定版本进行检出,点击确定。(如果是第一次使用,会弹出一个认证页面让填写用户名和密码,勾选保存认证,点击确定)在这里插入图片描述

3.2 向远程仓库提交代码或文件(Add+Commit)
3.2.1 Add(新增文件)

如果要把本地文件或代码添加到受版本控制的存储库中(已经执行过checkout操作的那个目录)

把文件添加进去后,文件上会出现蓝色问号,表示不属于版本库的位置文件,需要执行add操作,鼠标右键新增文件选择"Tortoise SVN"的"Add"选项,执行完add操作后才能成功commit。
在这里插入图片描述

3.2.2 SVN Commit(提交)

在本地对受版本控制的代码进行修改后,会发现文件上会有个红色标志,对修改的文件进行提交后才会受版本控制,提交成功后文件显示为绿色;将新add进来的文件成功commit后,文件的蓝色标志会变成绿色对勾。
团队协作的项目,在commit提交前执行svn update 操作获取文件最新版本,然后填写提交信息,再进行commit提交。
在这里插入图片描述在这里插入图片描述

3.3 SVN Update(更新操作)

团队协作的项目中项目成员都会进行代码提交,svn服务器上远程仓库的文件有了更新变动时需要先执行update操作,获取项目的最新版本。
选择要更新的文件,点击鼠标右键选择SVN Update 获取文件的最新版本。在这里插入图片描述

3.4 SVN Delete(删除操作)

如果需要删除版本控制下的文件,首先执行Delete操作,然后再进行commit提交,远程仓库里的文件才能被成功删除。在这里插入图片描述在这里插入图片描述

3.5 版本回溯
3.5.1 Revert to a revision

选择版本控制下的文件,选择需要版本回退的文件,右键Tortoise SVN,选择show logs,选择想要回退的版本,点击鼠标右键选择 Revert to this revision,点击Revert,点击OK,回溯成功。在这里插入图片描述在这里插入图片描述在这里插入图片描述

3.5.2 不同版本内容之间的比较

选择文件,右键Tortoise SVN,选择show logs,邮件选择相要比较的版本,邮件 compare with working copy,选择版本与当前版本进行比较。在这里插入图片描述在这里插入图片描述

3.6 Get lock 和 Release lock(加锁和解锁)
3.6.1 Get lock(加锁操作)

为避免多人同时修改文件产生冲突,可以将文件锁定,直至文件修改完成,选择要修改的文件,右键Tortoise SVN,点击Get lock锁定文件。在这里插入图片描述

输入锁定文件原因,点击OK。
在这里插入图片描述
点击OK,完成锁定

在这里插入图片描述

3.6.2 Release lock(解锁操作)

选择已锁定的文件,右键Tortoise SVN,点击Release lock

在这里插入图片描述

点击OK,完成解锁。
在这里插入图片描述在这里插入图片描述

3.7 Show log(查看日志)

作用是显示文件或目录被执行的操作,显示修改人,以及修改的时间和日期,选择文件右键Tortoise SVN的show log 选项。在这里插入图片描述在这里插入图片描述

3.8 SVN Merge和冲突解决

合并代码时用到SVN Merge功能,需要合并到哪个分支上边就点击哪个分支;例如(a分支需要合并到b分支上,那就在b分支上选择Tortoise SVN的Merge选项,目标路径写a分支的路径,点击next,点击Merge)
在这里插入图片描述
点击Merge
在这里插入图片描述

解决冲突:

(Merge后或者代码更新上传后,如果同事同时对代码的某个地方进行修改或者更新上传会显示冲突,如果有冲突的话需要解决冲突)在这里插入图片描述
可以查看log日志,看前边谁进行了相同模块的修改,便于代码覆盖进行协商。在这里插入图片描述
会提示哪个文件冲突,只需要打开哪个文件,按照需求解决冲突进行。

  • 解决冲突有三种选择:
    1. 放弃自己的更新,使用svn revert(回滚),然后提交,这种方式下不需要使用svn resolved
    2. 放弃自己的更新,使用别人的更新,使用最新获取的版本覆盖目标文件,执行resolved filename并提交(选择文件-右键-解决)
    3. 沟通解决:冲突发生时,通过和同事沟通后,手动更新目标文件。然后执行resolved filename来解决冲突,最后提交。
3.9 Branch/Tag(打标签)-创建及合并分支
3.9.1 Branch/Tag(打标签-创建分支)

每次发布时都应该打上标签,右键选择Branch/Tag,在To Path上以版本号打上标签即可在这里插入图片描述

选择版本库里的某个版本进行分支拉取 打标签
在这里插入图片描述在这里插入图片描述
这样就有了一个v1.0.0版本的标签,以后想看某个版本的代码,只有选择 Switch 选项切换过去就行在这里插入图片描述在这里插入图片描述在这里插入图片描述

3.9.2 Merge 合并分支

刚刚我们拉取了一个新分支,并打了v1.0.0标签,现在对v1.0.0分支增加一个.txt文件合并到test_xxx分支上,在test_xxx分支上鼠标右键TortoiseSVN,选择Merge选项进行合并
在这里插入图片描述

选择分支进行合并
在这里插入图片描述在这里插入图片描述

可以看到v1.0.0分支新增的.txt文件已经合并到当前分支
在这里插入图片描述

如何在本地创建存储库:

Tortoise不会安装命令行工具。 要创建一个新的存储库:
在这里插入图片描述

  • 在你的c盘或者d盘创建一个空白文件夹。
  • 切换到文件夹
  • 在该文件夹上点击鼠标右键
  • 从TortoiseSVN选择“Create reposity here”
    即通过创建一个空文件夹来创建存储库,然后将其打开并右键单击并在此处点击鼠标右键选择TortoiseSVN-> Create repository。
SVN中导出Export和检出check out的区别:

既然有导出功能了,还要检出做什么呢?因为与导出不同,检出的文档有两份。一份是用户能看到、修改的文档,
被称之为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版的结果。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值