网站建设与维护流程,公众号小程序免费开通,绵阳做最好优化网站的,重庆网网站建设公司文章目录 基础知识-Windows下版本控制器(SVN)1、开发中的实际问题2、版本控制简介2.1 版本控制[Revision control]2.2 Subversion2.3 Subversion 的优良特性2.4 SVN 的工作原理#xff1a;2.5 SVN 基本操作 本人其他相关文章链接 基础知识-Windows下版本控制器(SVN)
1、开发中… 文章目录 基础知识-Windows下版本控制器(SVN)1、开发中的实际问题2、版本控制简介2.1 版本控制[Revision control]2.2 Subversion2.3 Subversion 的优良特性2.4 SVN 的工作原理2.5 SVN 基本操作 本人其他相关文章链接 基础知识-Windows下版本控制器(SVN)
1、开发中的实际问题
小明负责的模块就要完成了就在即将 Release 之前的一瞬间电脑突然蓝屏 硬盘光荣牺牲几个月来的努力付之东流——需求之一备份这个项目中需要一个很复杂的功能老王摸索了一个星期终于有眉目了可是这 被改得面目全非的代码已经回不到从前了。什么地方能买到哆啦 A 梦的时光机啊 需求之二代码还原小刚和小强先后从文件服务器上下载了同一个文件Analysis.java。小刚在Analysis.java 文件中的第 30 行声明了一个方法叫 count()先保存到了文件服务 器上小强在 Analysis.java 文件中的第 50 行声明了一个方法叫 sum()也随后 保存到了文件服务器上于是count()方法就只存在于小刚的记忆中了——需求 之三协同修改老许是一位项目经理我会告诉你他把每一个版本都保存一份吗我会告诉你这 些工程里其实有很多文件都是重复的吗我会告诉你老许为这事删了很多电影 吗——需求之四多版本项目文件管理老王是另一位项目经理每次因为项目进度挨骂之后他都不知道该扣哪个程序 员的工资就拿这次来说吧有个该死的 Bug 调试了 30 多个小时才知道是因为 相关属性没有在应用初始化时赋值可是二胖、王东、刘流和正经牛都不承认是 自己干的——需求之五追溯问题代码的编写人和编写时间小温这两天幸福的如同掉进了蜜罐里因为他成功的得到了前台 MM 丽丽的芳心 可他郁闷的是这几天总是收到 QA 小组的邮件要求他修正程序中存在的 Bug 可他自己本地电脑上是没有这些 Bug 的“难道我的代码被哪个孙子给改了”。 是的小温没来的时候丽丽是 QA 小组小郑的女朋友啊——需求之六权限 控制
2、版本控制简介
2.1 版本控制[Revision control]
最初来源于工程设计领域是维护工程蓝图的标准做 法能追踪工程蓝图从诞生一直到定案的过程。是一种记录若干文件内容变化 以便将来查阅特定版本修订情况的系统。
2.2 Subversion
就是一款实现版本控制的工具软件通常也称为版本控制器简称 SVN。
Subversion 是 Apache 软件基金会组织下的一个项目。
2.3 Subversion 的优良特性
①目录版本控制 CVS 只能追踪单个文件的历史但是 Subversion 实现了一个“虚拟”文件系 统可以追踪整个目录树的修改文件和目录都是版本控制的结果就是可以在 客户端对文件和目录执行移动和复制命令。
②原子提交
提交要么完全进入版本库要么一点都没有这允许开发者以一个逻辑块提 交修改。
③版本控制的元数据
每个文件和目录都有一组附加的“属性”你可以发明和保存任意的键/值对 属性也会像文件内容一样被纳入版本控制。
④可选的网络层 Subversion 在版本库访问方面有一个抽象概念利于人们去实现新的网络机 制Subversion 的“高级”服务器是 Apache 网络服务器的一个模块使用 HTTP
的变种协议 WebDAV/DeltaV 通讯这给了 Subversion 在稳定性和交互性方面很 大的好处可以直接使用服务器的特性例如认证、授权、传输压缩和版本库浏 览等等。也有一个轻型的单独运行的 Subversion 服务器这个服务器使用自 己的协议可以轻松的用 SSH 封装。
⑤一致的数据处理 Subversion 使用二进制文件差异算法展现文件的区别对于文本(人类可读)
和二进制(人类不可读)文件具备一致的操作方式两种类型的文件都压缩存放在 版本库中差异在网络上双向传递。
⑥高效的分支和标签
分支与标签的代价不与工程的大小成比例Subversion 建立分支与标签时只 是复制项目使用了一种类似于硬链接的机制因而这类操作通常只会花费很少 并且相对固定的时间以及很小的版本库空间。
2.4 SVN 的工作原理
采取客户端/服务器模式——在服务器的版本库中保存项目文 件的各个版本所有参与协同开发的程序员在自己本地电脑上保存一个工作副本。
SVN 支持程序员将本地副本更新到服务器端的最新版本也支持将本地副本的最 新改变更新到服务器端而且后面的更新不会覆盖前面的更新而是作为一个新 的版本被保存下来——SVN甚至支持将本地工作副本恢复为服务器端保存的某一 个历史版本。
2.5 SVN 基本操作
①检出checkout将一个服务器端创建好的项目整个下载到本地这是到项目 组后参与开发的第一步只需执行一次。
②更新update将本地文件更新为服务器端的最新版本通常为每天上班时
或修改公共文件之前执行一次。
③提交commit将本地修改提交到服务器端。通常每天下班前或每实现一个 功能、完成一个模块时执行一次。
本人其他相关文章链接
1.Windows下版本控制器(SVN) - 1、开发中的实际问题2、版本控制简介 2.Windows下版本控制器SVN-验证是否安装成功配置版本库启动服务器端程序 3.Windows下版本控制器SVN-TortoiseSVN使用权限配置合并深度介绍分支介绍 4.Windows下版本控制器SVN- 配置版本库 5.Windows下版本控制器SVN-启动服务器端程序 6.TortoiseSVN使用-授权访问 7.TortoiseSVN使用-TortoiseSVN更换或重置登录用户 8.TortoiseSVN使用-合并分支代码 9.TortoiseSVN使用-权限配置 10.TortoiseSVN使用-合并深度介绍