Svn简单入门

Svn简单入门

学习目标

  • 了解版本控制相关的概念
  • 掌握SVN的安装
  • 掌握SVN的操作
  • 掌握在idea中集成SVN
  • 掌握自定义MVC框架
  • 了解什么是ElementUI
  • 了解ElementUI常用组件使用

第一章-版本控制

知识点-版本控制相关的概念

1.目标

  • 掌握版本控制相关的概念

2.路径

  1. 什么是版本控制
  2. 为什么要进行版本控制
  3. 常见版本控制工具

3.讲解

3.1 什么是版本控制

​ 版本控制(Revision control)是一种软体工程技巧,籍以在开发的过程中,确保由不同人所编辑的同一档案(项目代码)都得到更新。

3.2 为什么要进行版本控制
  1. 恢复到历史某个时间的代码
  2. 查看以往的代码修改记录及变化
  3. 协同开发时,合并同一文件中不同开发者写的代码
  4. 协同开发时定位修改代码的责任人
  5. 备份源代码
  6. 保护代码不被外泄
3.3 常见版本控制工具
  • CVS 早期版本管理软件
  • ClearCase IBM企业级大型版本管理工具, 收费
  • VSS 微软推出的版本管理工具, 较少使用
  • SVN市面流行的版本管理工具之一,拥有CVS所有功能,修复了CVS的不足
  • GIT分布式版本管理工具, 已经是趋势,最常用的

4.小结

  1. 什么版本控制

    ​ 是一种软体工程技巧, 确保由不同人所编辑的同一档案(项目代码)都得到更新。

  2. 为什么要使用版本控制

    1. 便于协同开发中的代码合并
      2. 可以恢复到某个版本的代码
      3. 可以对代码的修改进行溯源
      4. 保护代码的安全不泄露
  3. 常见的版本控制工具

    ​ SVN

    ​ Git(使用最多的)

知识点-SVN介绍

1.目标

  • 掌握什么是SVN以及SVN的工作方式

2.路径

  1. SVN概述
  2. SVN工作方式【重点】

3.讲解

3.1SVN概述

​ Svn(Subversion)是版本管理工具,在当前的开源项目里(J2EE),几乎95%以上的项目都用到了 SVN。Subversion 项目的初衷是为了替换当年开源社区最为流行的版本控制软件CVS,在CVS的功能的基础上有很多的提升同时也能较好的解决CVS系统的一些不足。

3.2 SVN工作方式【重点】

在这里插入图片描述

4.小结

  1. SVN: 就是一个版本管理工具
  2. SVN工作方式

在这里插入图片描述

实操-SVN的安装

1.目标

  • 掌握SVN服务端和客户端的安装

2.路径

  1. SVN服务器的安装
  2. SVN客户端的安装

3.讲解

相关资料下载: https://download.csdn.net/download/qq_22075913/85259262

3.1 SVN服务器的安装

详情参考资料 【 01_VisualSVNServer安装步骤.html】

3.2 SVN客户端的安装

详情参考资料 【02_svn客户端安装步骤.html】

4.小结

  1. 注意

​ 目录都不要有中文和空格

  1. 装客户端
    • 先装客户端软件
    • 再装语言包

实操-创建仓库和用户

1.目标

  • 掌握创建仓库和用户

2.路径

  1. 创建仓库
  2. 创建用户

3.讲解

3.1创建仓库

详情参考资料 【03_VisualSVN创建仓库.html】

3.2创建用户

详情参考资料 【04_VisualSVN创建用户步骤.html】

4.小结

  1. 创建仓库

在这里插入图片描述

  1. 用户和组

    • 给用户或者组分配权限

实操-SVN功能操作【了解,主要是在idea中操作】

1.目标

  • 掌握SVN的功能操作

2.路径

3.讲解

3.1检出代码(checkout)
  1. 拷贝路径

在这里插入图片描述

  1. 通过svn客户端检出代码

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  1. 检出的结果

在这里插入图片描述

.svn文件夹为版本控制的标记记录

3.2 提交代码
  1. 新建文件

    在这里插入图片描述

    新建完成后,文件会有一个?号图标,代表当前文件未纳入到版本控制中

  2. 添加到版本控制中

    在这里插入图片描述

    在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

添加操作完成后,文件图标会变为+号图标,代表当前文件已经纳入到版本控制中,但是没有上传到svn服务器中。

  1. 提交到版本控制器服务器

    在这里插入图片描述

    在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

提交操作完成后,图标会变为对钩,代表文件已经上传到版本控制服务器中。

3.3 更新代码

当一份代码被修改之后,文件前面的图标会变成感叹号,表示这个文件的内容和svn服务器上的内容不一致

在这里插入图片描述

修改者要使用commit命令将修改之后的代码提交到SVN服务器;
在这里插入图片描述

Update,它是更新操作,可以将svn服务器上的内容更新到本地,另一个程序员在写代码之前,要先进行update操作,如果不先进行update操作,就会发生代码冲突

3.4 冲突解决
  • 冲突产生的原因

    多个人同时修改一个文件. eg: A,B同时下载最新的代码都修改同一个文件,A修改后上传提交。B修改提交,B就会提交失败。因为B的文件以及过时。必须重新更新。当更新的时候出现:

在这里插入图片描述

  • 编辑冲突

在这里插入图片描述

3.5 更新到某个版本

​ 选中文件,右键更新之某个版本

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

3.6 版本库的备份和还原【了解】
  • 到版本VisualSVN的仓库目录中拷贝要备份版本库。
    在这里插入图片描述

在这里插入图片描述

  • 还原

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

4.小结

4.1 SVN图标

在这里插入图片描述

4.2 SVN使用规范
  • 先更新,再修改,再提交

    ​ SVN更新的原则是要随时更新,随时提交。当完成了一个小功能,能够通过编译并且自己测试之后,谨慎地提交。
    如果在修改的期间别人也更改了svn的对应文件,那么commit就可能会失败。如果别人和自 己更改的是同一个文件,那么update时会自动进行合并,如果修改的是同一行,那么合并时会产生冲突,这种情况就需要同之前的开发人员联系,两个人一起协商解决冲突,解决冲突之后,需要两人一起测试保证解决冲突之后,程序不会影响其他功能。
    在更新时注意所更新文件的列表,如果提交过程中产生了更新,则也是需要重新编译并且完成自己的一些必要测试,再进行提交。这样既能了解别人修改了哪些文件,同时也能避免SVN合并错误导致代码有错。

  • 多提交

    ​ 每次提交的间歇尽可能地短,以几个小时的开发工作为宜。例如在更改UI界面的时候,可以每完成一个UI界面的修改或者设计,就提交一次。在开发功能模块的时候,可以每完成一个小细节功能的测试,就提交一次,在修改bug的时候,每修改掉一个bug并且确认修改了这个bug,也就提交一次。我们提倡多提交,也就能多为代码添加上保险。

  • 不要提交不能通过编译的代码

    ​ 代码在提交之前,首先要确认自己能够在本地编译。如果在代码中使用了第三方类库,要考虑到项目组成员中有些成员可能没有安装相应的第三方类库。项目经理在准备项目工作区域的时候,需要考虑到这样的情况,确保开发小组成员在签出代码之后能够在统一的环境中进行编译。

  • 每次提交必须写明注释

    ​ 在一个项目组中使用SVN,如果提交空的标注或者不确切的标注将会让项目组中其他的成员感到很无奈,项目经理无法很清晰的掌握工作进度,无法清晰的把握此次提交的概要信息。在发现错误后也无法准确的定位引起错误的文件。所以,在提交工作时,要填写明晰的标注,能够概要的描述所提交文件的信息,让项目组其他成员在看到标注后不用详细看代码就能了解你所做的修改。

  • 不要提交本地自动生成的文件

    ​ IDEA里面的编译之后的文件target, .idea文件

实操-在IDEA中使用SVN(重点)

1.目标

  • 掌握在IDEA中配置SVN

2.路径

  1. 配置SVN
  2. IDEA SVN使用

3.讲解

3.1 配置SVN

注意: 需要认证证书时,删除这个目录下所有内容C:\Users\用户名\AppData\Roaming\Subversion

选择File>Other Settings> Settings For New Projects>Version Controller>Subversion,分别设置命令行客户端工具和svn配置信息存储目录。如下图:

在这里插入图片描述

3.2 IDEA SVN使用
3.2.1 浏览仓库

选中IDEA工具栏的VCS > Browse VCS Repository > Browse Subversion Repository

在这里插入图片描述

此时会出现如下界面,我们点击+号,输入本地SVN地址,再点击OK即可将SVN地址加入进来。

在这里插入图片描述

如果没有记住用户名和密码时,它就会弹出界面如下,需要我们输入正确的账号和密码方能实现仓库浏览。

在这里插入图片描述

账号密码正确后,如下浏览:

在这里插入图片描述

3.2.2 上传本地项目到SVN

在IDEA中,将本地项目共享到SVN,这个操作比较简单。

要做这个练习,我们先创建一个maven工程,这个工程还没有连接到SVN。然后再做以下操作

确保SVN功能已经开启:VCS > Enable Version Controller Integration

在这里插入图片描述

选中Subversion,此时项目的颜色会变成黄色,表明SVN功能已经开启。
在这里插入图片描述

2019版本的idea需要额外设置

在这里插入图片描述

共享操作:在工程上右键 > Subversion > Share Directory

在这里插入图片描述

选择要共享的目标SVN地址,接着指定要共享的目标对象,点击Share之后,会在SVN创建一个对应的版本库文件,但该项目并未立刻提交。

在这里插入图片描述

提交对应工程:选择对应工程 > Subversion > Commit Directory

在这里插入图片描述

勾选要提交的内容,并填写上提交内容的注释信息,然后点击commit提交,提交完成后,项目就会被提交到SVN

在这里插入图片描述

成功后再查询仓库,此时新的项目就出现了

在这里插入图片描述

3.2.3 Add Commit

添加新文件时,idea会访问是否将新文件添加到SVN管理中

在这里插入图片描述

注意,此时的文件是没有上传到svn上的,需要通过commit file才行

在这里插入图片描述

如果文件有修改,也是要在项目上或者修改的文件上右击Subversion > Commit File

选择要提交的内容,并填写上注释,然后选中commit即可。

在这里插入图片描述

3.2.6 checkout 检出
  1. 新创建一个文件夹,作为你的本地仓库

在这里插入图片描述

  1. 在当前文件夹中执行svn检出操作,将SVN服务器仓库中的内容检出到本地仓库

在这里插入图片描述

  1. 在idea中创建一个空项目,在空项目中导入你检出的内容中的module(day40_svn)

在这里插入图片描述

  1. 修改完项目的代码执行,执行svn的commit就可以提交代码

在这里插入图片描述

在这里插入图片描述

3.2.4 Update

如果需要更新服务器上的文件,选中要更新的项目并右键 > Subversion > Update Directory

在这里插入图片描述

一般直接点击OK即可,但如果需要选择历史版本,则勾上HEAD选项。

在这里插入图片描述

3.2.5 解决冲突

多个用户同时编辑一个文件并都直接执行提交时,容易导致冲突产生,如下:
在这里插入图片描述

产生了冲突
我们在工程上执行更新操作
在这里插入图片描述

如果文件变更发生冲突,会看到如下界面,这里会有三个选项:
在这里插入图片描述

Accept Yours:接受你的版本,会以自己的版本为正确版本。

Accept Theirs:接受SVN上的版本,会把服务器的版本作为正确版本。

Merge:合并,需要将冲突手动排除。
在这里插入图片描述

在这里插入图片描述

最后还要把这个文件提交

4.小结

  1. 安装SVN服务器
  2. 安装SVN客户端
  3. 在SVN服务器上创建仓库、用户、用户组
  4. 在idea上配置SVN
  5. 在idea上新建一个module,共享给SVN服务器,提交到SVN服务器
  6. 模拟第一天进公司,需要从svn服务器上检出项目,并且修改代码、提交代码
  7. 模拟协同开发的时候,解决冲突
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值