SVN

SVN简介

  1. 全称Apache Subversion ,是版本控制系统。

  2. SVN相对于的RCS、CVS,采用了分支管理系统,它的设计目标就是取代CVS。
    RCS (Revision Control System) 修订控制系统,使用Lock机制防止多个开发人员对同一个文件同时进行修改。
    CVS(Cocurrent Version System)并发版本系统,使用单一的主代码树,而不像RCS那样依赖多个目录,最大优点在于多名开发人员可以同时对一个文件进行修改.允许合并。
    SVN(SubVersion)版本控制,CVS 只能对文件进行版本控制,不能对目录进行版本控制。CVS 只能注意到,一个文件在一个位置被删除了,而在一个新位置创建了另外一个文件。由于它不会连接两个操作,因此也很容易使文件历史轨迹丢失。SVN可以连接两个操作。CVS 采用串行批量提交模式,有个弊端:当任何原因造成批量操作的中断时(典型原因包括:网络中断、客户端死机等),版本库往往处于一个不一致的状态:原本应该全部入库的文件只有一部分入库,很有可能版本库中的最新版本不能顺利编译,更为严重的是,随着其他的用户执行cvs update 操作,该不一致性将迅速在开发团队中扩散,从而严重影响团队的开发效率,并存在质量隐患。另外,假如该批量提交的中断没有被及时发现,开发团队往往要花更多的时间进行软件调试和排错。
    Git 是用于 Linux 内核开发的版本控制工具。与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便。 Git 的速度很快,这对于诸如 Linux kernel 这样的大项目来说自然很重要。 Git 最为出色的是它的合并跟踪(merge tracing)能力。
    Git更加适合分布式开发项目,而SVN则更适合于集中式大型开发项目。
    也有在Git之上再使用一层SVN的做法。
    参考链接: https://blog.csdn.net/hh2000/article/details/3741212.

  3. 管理着随时间改变的数据, 这样你就可以把档案恢复到旧的版本, 或是浏览文件的变动历史。

SVN概念

1.Update(获得最新的代码) -->作出自己的修改并调试成功 --> Commit(大家就可以看到你的修改了) 。
2.repository(源代码库):源代码统一存放的地方
3.Checkout(提取):从repository checkout一份你没有的代码。
如果两个程序员同时修改了同一个文件呢, SVN 可以合并这两个程序员的改动,实际上SVN管理源代码是以行为单位的,就是说两个程序员只要不是修改了同一行程序,SVN都会自动合并两种修改。如果是同一行,SVN 会提示文件 Conflict, 冲突,需要手动确认。

SVN功能

  1. 目录版本控制
  2. 真实的版本历史
  3. 自动提交
  4. 纳入版本控管的元数据
  5. 选择不同的网络层
  6. 一致的数据处理方式
  7. 有效的分支(branch)与标签(tag)
  8. Hackability(可编程性)

在windows下安装SVN

在CentOS下安装SVN

在Ubuntu下安装SVN

TortoiseSVN

  1. TortoiseSVN 安装和语言包补丁的下载。(考虑镜像下载)
  2. TortoiseSVN 的使用。

菜鸟教程: https://www.runoob.com/svn/tortoisesvn-intro.html.
TortoiseSVN使用: https://www.jianshu.com/p/6b3b7b915332.

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值