• 软件版本控制(SVN/CVS)详解


    Software Configuration Management 即软件配置管理,也就是软件版本管理控制。简称 SCM

    为什么会有SCM?

    在比较大的项目中,一般需要的开发人员比较多,所以凸显的问题就太多了,比如:

     在许多人共同开发一个项目下,一个程序员如何得到最新版本?
     对于版本的修改情况,代码哪些更新过了?
     如何查询或者更新到之前的版本(当前版本出问题的情况下)。

     项目经理准确的得到当前的工作进度。

    开发人员都改变相同版本的代码,做了同样的工作或者代码发生冲突。

    记录开发历史,不方便比较不同和修改。

    ..........................

    SCM就是能够解决这些问题而诞生。

    SCM历史?

    起始于1970年,先用于 UNIX下开发的版本管理控制。

    发展历程:

    起始于:

                SCCS (Source Code Control System) 
                RCS (Revision Control System)

    演变:
                 SCCS→CodemgrTeamWare
                 RCSCVS             
                 SVN   --------SVN是异军突起,它满足CVS的功能,并且解决了CVS一些致命的缺点。所以现在大部分都在使用SVN了。

    SCM主要作用?

    Version Control(版本控制和产品数据管理)

    其他----(从程序员的角度来说很少用哦)

    SCM的主要术语?

    (了解概念)

    Repository    ---代码仓库
    Workspace   ---工作台      (就是客户端的上传下载代码的目录)
    Delta ()          ---不同版本的差别的保存。(文件和项目都有不同的版本,不同的版本比较不同的变化来做保存)--了解概念
    Baseline       ---基线(HEAD) 
    Branch          ---分支(拷贝出两个项目,发展不同的功能或者做bug修改)
    Label             ---标签(Tag)

    国际性的一些大公司,他们开发自己的版本控制和代码管理工具,而且更自动化,可以自己更新,实现测试代码,发现bug等强大的功能,但是一般都是不开源的私人工具。例如:微软的操作系统团队版本控制工具。

    SCM哪些人在用?

    Project manager      -----(项目经理)
    Software engineer   -----(开发者)
    QA manager             -----(测试经理)
    QA engineer             -----(测试人员)
    Build and release engineer  ------(构建经理)

    SCM目前使用最多的工具?

    CVS
    SVN
    VSS(微软)
    ClearCase
    TeamWare

    ---------------分割线-----------------------

    写本文是想彻底去了解为什么会产生版本控制工具,他的历史,以及明白现在用的SVN是如何发展到现在这一步的。

    文章做了概念性的说明,没有去项目分析每一句。只希望快速的去明白一些概念。(有 概念综合征的人 请绕道,或者请看下篇实际操作)

    下篇对SVN在windows下的操作和SVN在Eclipse里面做的操作做一个总结(从程序员角度)

      SVN在windows下的操作:http://blog.csdn.net/todaymz/article/details/8738919

    Eclipse使用SVN的基本操作:


    转载请说明出处:http://blog.csdn.net/todaymz/article/details/8738872

  • 相关阅读:
    Oracle基础知识
    tomcat服务器
    jquery实现常用UI布局
    css画布
    css布局
    jquery快速常用技能
    css快速浏览
    css选择器
    spring boot项目mybatis配置注解+配置文件
    sass的安装和基础语法
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/2990641.html
Copyright © 2020-2023  润新知