Web开发- Git版本控制系统

1、版本控制系统介绍( VCS - Version Control System )

版本控制系统是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。

  • 记录文件的所有历史变化
  • 随时可恢复到任何一个历史状态
  • 多人协作开发或修改
  • 错误恢复
  • 多功能并行开发   eg:  分支、合并

版本控制系统分类:1、本地版本控制系统(Local VCS)eg:RCS   (Revision Control System)    (linux system 常见)

    优点: 

  • 简单,很多系统中都内置
  • 适合管理文本文件   eg: 配置文件 ,doc  等

    缺点:

  • 只适合管理少量文件,不支持基于项目的管理
  • 支持的文件类型较单一
  • 不支持网络,无法实现多人协作

   2、 集中化版本控制系统(Centralized VCS)  eg : CVS  (Concurrent Version  System )     、      Subversion

     优点:

  • 适合多人团队协作开发
  •  代码集中化管理

     缺点:

  • 单点故障
  • 必须联网操作,无法单机本地工作

    3、分布式版本控制系统(Distributed VCS)     eg:   Git   、 Mercurial

      优点:

  • 适合多人团队协作开发
  • 代码集中化管理
  • 可以离线工作
  • 每个计算机都是一个完整仓库                    强备份,避免单点故障

        版本控制系统基本概念

  • repository   -  存放所有文件及其历史信息
  • checkout    -  取出或切换指定版本的文件
  •  version       -  记录标识一个版本(编号或其他代码)
  •  tag              -   记录标识一个主要版本(1.0、2.0、3.0)  eg :  里程碑记录

2、Git版本控制系统                    Git : 饭桶

  Git 是一个分布式版本控制系统,Git最初开发是为了取代BitKeeper,由Linux 创始人 Linus Torvalds 开发,作为Linux 内核代码管理系统使用。

  Git 设计时考虑了很多方面,除了分布式版本控制系统的优点外,还考虑了以下设计目标,这些目标都成为了Git的优点:

  • 速度
  • 简单的设计
  • 对非线性开发模式的强力支持(允许上千个并行开发的分支)
  • 完全分布式
  • 有能力高效管理类似Linux内核一样的超大模式项目(速度和数据量)

        为何取名“Git””

  "I‘m an egotistical bastard,and I name all my projects after myself,First ‘Linux’,now 'Git'’"--Linux Torvalds

Git  原理   -   快照,而非保存区别

每一种版本控制系统都用一种办法追踪不同阶段的变化

                         -    文件的鉴别和操作

几乎所有操作都是在本地执行

通过校验和算法识别文件变化

  -   Git 使用SHA - 1 算法对文件内容或目录进行哈希运算,用得出的校验值作为识别变化的指纹,如   2324usef34893882929

多数操作均为添加操作

Git 原理   -   文件状态及工作区域

  • Git repository最终确定的文件保存到仓库 ,成为一个新的版本,并且对他人可见
  • Staging area (index)暂存已经修改的文件
  • Working Directory          编辑、修改文件

       

                            

          

 

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值