Revision control:GIT & SVN

Revision control

Revision control

定义:对软件开发过程中各种程序代码配置文件说明文档文件变更的管理

  #是软件配置管理的核心思想之一。

目的:#1  追踪文件变更。包括 时间、提交者、提交内容等。

           #2   并行开发。[通过 分支与合并,解决 不同版本软件的Bug。

特点:每次文件改变,文件的版本号都将增加

核心:documentation control文档控制,记录改动、并为改动编上序号。

一内容与流程

内容:检入检出控制、分支、合并、历史记录

##1.同步控制实质是版本的检入检出控制。

    ##检入,把软件配置项从用户的工作环境,存入到软件配置库的过程。

    ##检出,把软件配置项从软件配置库取出,到用户的工作环境的过程。

##2.分支, ①拷贝: 拷贝主版本  \   ②标记:标记拷贝版本

##3.合并, ①将A版本内容附加到B版本内容 \  ② 合并A版本与B版本的内容,形成C版本。

##4.历史记录:版本号、版本修改时间、版本修改者、版本修改内容等。id\time\author\description

流程:创建配置项、修改状态、技术评审或领导评审、正式发布、变更。

##1.创建配置项:在配置库创建配置项,设置状态为"草稿",                版本号格式0.YZ

##2,修改状态:   Check in/Check out,修改处于“草稿”状态的配置项,版本号格式0.YZ

##3.技术评审或领导评审:技术文档\计划类文件

##4.正式发布:配置项通过评审,状态从"草稿"变为"正式发布",           版本号格式X.Y

##5.变更:       安装"变更控制流程",修改"正式发布"状态的配置项

GIT 分布式版本控制系统

一概念

定义:一个开源的分布式版本控制系统。Linux内核

优势:Git 最为出色的是合并跟踪(merge tracing)能力

操作:  

#创建版本库 git init

#添加内容         git  add 

#提交内容         git  commit

  ##状态提示     git  status

  ##比较差异     git  diff

#管理分支         git  branch

  ##创建分支 

  ##删除分支  -d       git  branch  -d               $ git branch -d branch-name

  ##合并分支  merge  

  ##逆转恢复     git reset

 

SVN 分支管理的版本控制系统

一概念   SVN    Subversion

定义:

优势:

##  存储类型格式   基于关系数据库的(BerkleyDB)或一系列二进制文件的(FS_FS)

##  速度                  网络传输慢,但支持离线模式

##  标志&分支         #标志=

                                #分支=仓库内部的目录

##  元数据               文件命名可重复,以版本划分

##  文件类型

##  回滚                   项目末尾-状态版本 merge操作\  不允许提交后回滚

##  事务                   支持"零或一"事务原则

##

运行方式: 独立服务器\借助apache

数据存储: BDB(事务安全型表类型)\FSFS(无需数据库的存储系统)

二使用

1、从服务器下载项目组最新代码。

2、进入自己的分支,进行工作,每隔一个小时向服务器自己的分支提交一次代码(很多人都有这个习惯。因为有时候自己对代码改来改去,最后又想还原到前一个小时的版本,或者看看前一个小时自己修改了哪些代码,就需要这样做了)。

3、下班时间快到了,把自己的分支合并到服务器主分支上,一天的工作完成,并反映给服务器。

猜你喜欢

转载自blog.csdn.net/ddhmbbklyk2018/article/details/82420620
今日推荐