SVN的基本使用

SVN的基本使用

1.SVN介绍

SVN是Subversion的简称,是一个自由开源的版本控制系统。

SVN是一种集中式管理代码的版本控制系统,原理就是把代码都保存到一个固定的位置(仓库),每次从这个位置
拷贝更新代码,进行编辑;再把修改后的代码提交到该目录中。多人协作开发也是如此。

SVN将文件存放在仓库里,这个仓库很像一个普通的文件服务器,不同的是,它可以记录每一次文件和目录
的修改情况,这样就可以借此将数据恢复到以前的版本,并可以查看数据的更改细节。

如果某一次提交至仓库的代码有问题,可以借助SVN将其恢复到上次提交的版本。

1.1 基本原理

image-20210118101718904

​ 问题:怎样让User1、User2和Use3即多个用户之间共享系统的数据,而不让他们因为意外而互相干扰。

解决方案:对此SVN提出了两种模式进行解决。

  • 复制-修改-合并模式(SVN默认的模式)
    在这种模型里,每一个用户读取项目配置库建立一个私有工作副本——版本库中文件和目录的本地映射。用户并行工作,修改各自的工作副本,最终,各个私有的工作副本复制合并在一起,成为最终的版本,这种系统通常可以辅助合并操作,但是最终要靠人工去确定正误。

  • 锁定-修改-解锁模式
    在这样的模型里,在一个时间段里配置库的一个文件只允许被一个人修改。 此模式不适合软件开发这种工作。

2.SVN相关软件的安装与配置

svn原理就是把代码都保存到一个固定的位置(仓库),每次从这个位置拷贝更新代码,进行编辑;再把修改后的代码提交到该目录中。多人协作开发也是如此。因此需要一个类似Oracle或者Mysql的服务器用于保存和管理库文件(要保存的代码等文件)的服务端。

每一个用户进行工作时也需要从仓库下载或上传源码。因此客户端也需要用户操作的软件用于提交更新代码

  • 服务器端软件安装与配置

    这里以 VisualSVN为例。如果只是想简单的使用下SVN这里可以不看。

    1.下载
    下载地址:https://www.visualsvn.com/server/download/
    根据操作系统的位数选择合适的版本下载

    image-20210118112236294

    2.安装及创建仓库
    安装时主要的就是选择安装路径和仓库了,安装完后打开图形化界面

    image-20210118113915814

    ​ 安装完成后就开始创建仓库。
    ​ (1)创建工程目录

    image-20210118114720788

    ​ 这里会让你选择存储数据的方式,选择FSFS的就好。然后一步下一步就OK了。

    image-20210118114924595

    ​ (2)创建用户并分配权限

    image-20210118115501670

    ​ 设置用户名和密码

    image-20210118115735745

    ​ 分配用户权限。选中创建的仓库右键然后 Properties…

    image-20210118115932006

    image-20210118120456495

  • 客户端软件安装与使用

    这里以TortoiseSVN为例。TortoiseSVN是一个基于windows系统的svn客户端图形化界面.

    (1)下载安装

    ​ 下载地址:https://tortoisesvn.net/downloads.htm,这个安装一步下一步就OK了,

    image-20210118121344909

    3.SVN的基本使用

    3.1 浏览仓库

    该操作是浏览SVN服务器上有什么文件。

    前提是知道仓库的url,这里先copy下创建的测试仓库的地址。

    image-20210118130734318

    按图所示进行操作后,输入用户名和密码 即可浏览仓库

    image-20210118130925724

    除了这种方式还可以在浏览器中浏览,直接在浏览器地址栏输入url后,再输入密码就可以了。

    image-20210118131222634

    image-20210118131525606

    3.2 checkout

    该操作是将SVN服务器上的东西下载到用户本地。

    按图所示在文件夹下使用,然后没有出现红色的字就代表成功了。并且该文件夹下会自动创建出一个 .svn隐藏文件。

    image-20210118132519800 image-20210118132707645

    3.3 add

    该操作是将创建的源码文件保存到本地仓库。

    我们在上述文件夹(小吴)下创建一个文件,随便写点东西。
    先按图所示将该文件添加到本地仓库。

    image-20210118133455452

    3.4 commit

    该操作是将本地仓库上的文件提交到SVN服务器上。

    按下图所示再将本地仓库的内容添加到SVN服务器上

    image-20210118134030107 image-20210118134349014

    添加成功后如图所示,版本变为了 1

    image-20210118134524981

    3.5 update

    将之前创建的HelloWorld.java文件修改后再次进行提交 commit

    然后按图所示将该文件的日志展现出来

    image-20210118143735185

    我这里将版本三回退到版本二

    image-20210118144028620

    成功后可见版本回退到了版本二

    image-20210118144103447

    3.6 delete

    删除操作相对简单,但是要注意的是只是删除了本地的,svn服务器上还有。要想实现真正意义上的删除还需要 commit一次。

    image-20210118144531869

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值