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

  • checkout: 把整个项目源码下载到本地

  • update: 从服务器上更新代码,使本地达到最新版本

  • commit: 将本地源码提交到服务器

  • 两种存储方式:BDB、FSFS,一般用后者更安全

二、SVN常用操作
  • 浏览仓库:文件夹内右键-->TortoiseSVN-->Repo-brower

  • 下载全部文件: 文件夹右键-->TortoiseSVN-->checkout-->文件夹出现绿色对勾-->文件夹内出现.svn隐藏文件

  • 添加文件到本地仓库: 在文件夹内添加一个文件-->TortoiseSVN-->add

  • 提交文件到服务器:选中文件夹内文件-->TortoiseSVN-->commit-->成功又变成绿色对勾

  • 更新到某个版本:选中文件夹内文件-->TortoiseSVN-->show log-->选择版本-->右键-->update item to revision

    或者 选中文件夹内文件-->TortoiseSVN-->填入版本号

  • 删除文件:选中文件夹内文件-->TortoiseSVN-->Delet-->此时删除的是本地仓库的文件-->再次commit,才能删除服务器文件

  • Export导出文件:右键-->TortoiseSVN-->Export-->导出的文件时没有隐藏文件.svn的,也就是说它不受版本控制

  • 产生冲突和解决:当多个用户同事提交到服务器时,导致你与服务器版本不同步,当你在提交时就会产生冲突

    选中冲突的合并文件-->Edit conflicts-->右键选择使用使用那个文件和文件内容的顺序-->Mark as resolved -->commit-->冲突解决

三、IDEA下SVN配置与使用

  1. 配置svn: File-->Settings-->version control-->Subversion-->选择svn安装路径bin下的svn.exe-->Apply
  2. 将工程提交到SVN服务器:VCS-->import into Version Control-->Share Project(Subversion)-->添加连接-->选择版本-->进行提交
  3. 从SVN下载项目:VCS-->Checkout from Version Control-->Subversion-->添加链接
  4. 这五个图标依次意思如下:
    • Update Project 更新项目
    • Commit changes 提交项目上所有变化文件
    • Compare with the Same Repository Version 当前文件与服务器文件进行对比,如果当前没有改动,则不可点击。
    • Show history 显示当前文件的历史记录
    • Revert 还原当前被修改的文件到违背修改的版本状态下
四、SVN目录规范

在创建仓库的时候,选择svn目录结构-->Single-project repository(with the top-level'trunk','branches' and 'tags' folders)

Trunk主干目录,此目录下的文件为基准文件

Branches用于开发的分支目录

Tags 用于发布的版本目录

打分支/标记:在主干的目录里-->TortoiseSVN-->Branch/tag-->在选对应的类型+命名规范

  • 分支定义规则:Project name+日期时间+功能点
  • Tags定义规则:Project name+版本号 版本号定义为三段数字编号 xxx.xxx.xxx 第一:革命性的产品升级版 第二个:新功能版 第三个:修正bug

主干合并到分支,首先保证主干是最新的(update),然后在分支这边进行操作。分支合并到主干,相反。

常用的一般操作,大家可以了解一下,这也是进入企业一定会接触的,还有一个分布式的管理工具就是Git,咱们下其再说。

企业中真实需要的集中管理软件SVN即Subversion版本控制的更多相关文章

  1. 东正王增涛浅析OA信息化整合平台系统在企业中的应用价值

    王增涛说OA信息化整合平台系统作为企业管理中最基础的管理软件,已在企业成长道路上存在多年,它的应用开启了智能移动办公的先河,也让企业的办公流程管理更加的便捷.高效.流畅.省时.省力,它的使用不但让企业 ...

  2. Linux 中如何用源代码安装软件,以及如何卸载它

    https://www.linuxidc.com/Linux/2017-12/149839.htm http://www.openssh.com/ http://www.openssh.com/por ...

  3. 详解BOM用途分类及在汽车企业中的应用

    摘要:在整车企业中,信息系统的BOM是联系CAD.CAPP.PDM和ERP的纽带,按照用途划分产品要经过产品设计,工程设计.工艺制造设计.生产制造4个阶段,相应的在这4个过程中分别产生了名称十分相似但 ...

  4. Linux企业生产环境用户权限集中管理项目方案案例

    企业生产环境用户权限集中管理项目方案案例: 1 问题现状 当前我们公司里服务器上百台,各个服务器上的管理人员很多(开发+运维+架构+DBA+产品+市场),在大家登录使用Linux服务器时,不同职能的员 ...

  5. Memcached在企业中的应用

    Memcached简介 Memcached是一个自由开源的,高性能,分布式内存对象缓存系统. Memcached是以LiveJournal旗下Danga Interactive公司的Brad Fitz ...

  6. CMMI V2.0丨如何通过CMMI真正在企业中的实施规模化敏捷开发

    在过去的几年中,敏捷开发已经从一个利基概念(利基是指针对企业的优势细分出来的市场,这个市场不大,而且没有得到令人满意的服务.产品推进这个市场,有盈利的基础.)转变为全球许多大公司采用的标准实践. 通过 ...

  7. Flume_企业中日志处理

    企业中的日志存放_1 201611/20161112.log.tmp 第二天文件变为20161112.log与20161113.log.tmp 拷贝一份flume-conf.properties.te ...

  8. vs2013中把解决方案上传到SVN服务器

    在VS2013中直接上传代码到SVN服务器,在这之前,必须是你的电脑已经安装了TortoiseSVN. 其次,VS2013必须安装AnkhSVN插件.然后才可以向我下面所述一样使用TortoiseSV ...

  9. Eclipse中修改包名,提交SVN时报 is out of date,怎么办?

    问题:Eclipse中修改包名,提交SVN时报 is out of date,怎么办?描述: Hi,大家好! 我的问题如题,在不考虑用TortoiseSVN客户端直接删除目录这个方法的情况下,有什么方 ...

随机推荐

  1. C#怎么从List集合中随机取出其中一个值

    1.首先在该命名空间下创建一个实体,和在Main方法下List集合,为后续做准备: /// <summary> /// 实体 /// </summary> public cla ...

  2. 3-kubernetes监控与日志管理

    监控集群资源利用率 metrics-server是一个集群范围的资源使用情况的数据聚合器,作为一个应用部署在集群中 metrics-server从每个节点上kubelet API收集指标,通过kube ...

  3. NOI 2011 【阿狸的打字机】

    之前讲了[AC自动姬],今天我终于把这题给刚下来了...嗯,来给大家讲一讲. 题目描述: 打字机上只有28个按键,分别印有26个小写英文字母和'B'.'P'两个字母.经阿狸研究发现,这个打字机是这样工 ...

  4. vue的二级联动,数据是从php获取到的

    1.首先,一级要有change改变事件的关键字,v-on:change="selectarr($event)" 这是created(){}函数里面的自动调用一级分类的数据 html ...

  5. Java bean 链式获取成员变量无需判空的工具设计

    Java bean 链式获取成员变量无需判空的工具设计 本篇文章已发布至公众号 Hollis 对于Java程序员来说,null是令人头痛的东西.时常会受到空指针异常(NPE)的骚扰.连Java的发明者 ...

  6. 实验四  用PS制作横幅广告

    实验四  用PS制作横幅广告 [实验目的] ⑴.了解广告设计应用 ⑵.学会利用PS制作简单的横幅广告 [实验条件] ⑴.个人计算机一台 ⑵.个人计算机中预装Windows7操作系统和浏览器及Photo ...

  7. 动画演示Sunday字符串匹配算法——比KMP算法快七倍!极易理解!

    前言 上一篇我用动画的方式向大家详细说明了KMP算法(没看过的同学可以回去看看). 这次我依旧采用动画的方式向大家介绍另一个你用一次就会爱上的字符串匹配算法:Sunday算法,希望能收获你的点赞关注收 ...

  8. lumen容器模仿

    <?php class Container { private $bindings = []; private $instances = []; public function getClosu ...

  9. CentOS8 yum安装Mariadb10.4

    CentOS8 yum安装Mariadb10.4 https://downloads.mariadb.org/mariadb/repositories/#distro=CentOS&distr ...

  10. Linux终端 terminal

    终端 一个可以进行人机交互的界面 物理终端 设备终端:键盘.鼠标.显示器 终端类型 控制台终端: /dev/console 串行终端:/dev/ttyS# 虚拟终端:tty:teletypewrite ...