SVN简介
来源:互联网 发布:淘宝火锅底料哪个好吃 编辑:程序博客网 时间:2024/06/07 20:32
开发中的实际问题
下面的六点啦,是我们在开发中经常碰到到的问题,这也是使用svn的原因
1.1 备份!
1.2 代码还原!
1.3 协同修改!
1.4 多版本项目文件管理!
1.5 追溯问题代码的编写人和编写时间!
1.6 权限控制!
版本控制简介
版本控制[Revision control],最初来源于工程设计领域,是维护工程蓝图的标准做法,能追踪工程蓝图从诞生一直到定案的过程。是一种记录若干文件内容变化,以便将来查阅特定版本修订情况的系统。
Subversion就是一款实现版本控制的工具软件,通常也称为版本控制器,简称SVN。Subversion是Apache软件基金会组织下的一个项目。
SVN的优良特性
① 目录版本控制
CVS只能追踪单个文件的历史,但是SVN实现了一个“虚拟”文件系统,可以追踪整个目录树的修改,文件和目录都是版本控制的,结果就是可以在客户端对文件和目录执行移动和复制命令。
②原子提交
提交要么完全进入版本库,要么一点都没有,这允许开发者以一个逻辑块提交修改。
③版本控制的元数据
每个文件和目录都有一组附加的“属性”,你可以发明和保存任意的键/值对,属性也会像文件内容一样被纳入版本控制。
④可选的网络层
SVN在版本库访问方面有一个抽象概念,利于人们去实现新的网络机制,svn的“高级”服务器是 Apache 网络服务器的一个模块,使用 HTTP 的变种协议 WebDAV/DeltaV 通讯,可以直接使用服务器的特性,例如认证、授权、传输压缩和版本库浏览等等。也有一个轻型的,单独运行的 svn服务器,这个服务器使用自己的协议,可以轻松的用 SSH 封装。
⑤一致的数据处理
svn使用二进制文件差异算法展现文件的区别,对于文本(人类可读)和二进制(人类不可读)文件具备一致的操作方式,两种类型的文件都压缩存放在版本库中,差异在网络上双向传递。
⑥高效的分支和标签
分支与标签的代价不与工程的大小成比例,svn建立分支与标签时只是复制项目,使用了一种类似于硬链接的机制,因而这类操作通常只会花费很少并且相对固定的时间,以及很小的版本库空间。
SVN的工作原理:
采取客户端/服务器模式——在服务器的版本库中保存项目文件的各个版本,所有参与协同开发的程序员在自己本地电脑上保存一个工作副本。SVN支持程序员将本地副本更新到服务器端的最新版本,也支持将本地副本的最新改变更新到服务器端,而且后面的更新不会覆盖前面的更新,而是作为一个新的版本被保存下来——SVN甚至支持将本地工作副本恢复为服务器端保存的某一个历史版本。
SVN基本操作
①检出(checkout):将一个服务器端创建好的项目整个下载到本地,这是到项目组后参与开发的第一步,只需执行一次。
②更新(update):将本地文件更新为服务器端的最新版本,通常为每天上班时或修改公共文件之前执行一次。
③提交(commit):将本地修改提交到服务器端。通常每天下班前或每实现一个功能、完成一个模块时执行一次。
- SVN简介
- svn简介
- SVN简介
- SVN简介
- SVN简介
- svn 简介
- SVN简介
- SVN简介
- SVN简介
- Svn简介
- svn简介
- SVN简介
- SVN简介
- SVN简介
- SVN简介
- 简介SVN
- SVN简介
- SVN简介
- OJ_1181.求和
- Idea15 常用设置(一):JDK、SVN
- NSURLSession下载与缓存
- super(Dict) / zip(names, values) python
- 很认真的聊一聊程序员的自我修养(转自博客园)
- SVN简介
- JNI完全指南(七)——多线程
- 在CentOS7 上编译运行 RT-test工具cyclictest 及patch kernel
- Java基础方面:
- map.Entry初学
- 用Hexo + github搭建自己的博客 --- 再也不用羡慕别人了!
- 51nod 1337 翻转游戏
- linearlayout1
- JAVA代码覆盖率工具JaCoCo-踩坑篇