Git--介绍

1、为什么我们需要git?

进行版本管理

  • 举例:你在大学中写论文
    • 写论文的时候会出现很多个版本,每个版本都有自己特点
    • 论文v1.doc:最基本的论文框架
    • 论文v2.doc:添加了一个段落
    • 论文v3.doc:修改了一行
    • 论文v4.doc:添加的那个段落删除,保留的修改的那一行,再修改一行
    • 论文v5.doc:恢复删除的那个段落,保留修改的行
  • 问题1:如果我想回到某个版本怎么办?
    • 手动的管理和记录每个版本之间的变化
  • 问题2:如果我让别人帮我写,我自己也写,我想将别人写的部分和我写的部分合并怎么办?
    • 论文有10个部分,10个人来写,我需要合并
    • 我觉得有个人写的不好,我要重写它的,再合并
  • 问题3:所有的操作都在手动管理,极其容易出现错误
    • 项目开发会存在同样的问题
    • 整个项目由多个人共同开发,每个人开发的模块可能一样也可能不一样
    • 不一样:每个人负责不同的 功能模块
    • 一样:多个人共同负责一个模块
  • 问题4:代码会产生多个版本,版本如何控制?毕竟需求有时候不是那么明确的啊~~~
    • 这个版本中没有这个功能,但是我下个版本想要这个功能,下下一个版本这个功能又不需要了

产品

  • v1:A、B
    • 原来的版本,有A和B两个功能
  • v2:A、C
    • 去掉了B功能,添加了C功能
  • v3:A、B、C
    • 添加了B这个功能
  • 如何实现多个人共同开发一个项目,能将项目的多个版本进行自由方便的管理
    • 甲:今天开发了一个版本,保存这个版本
    • 乙:基于甲昨天开发的版本,进行继续开发
    • 丙:负责开发另外一个版本

2、git的诞生

  • 项目版本管理工具:能自动的将多个版本进行存储,类似于快照,多个人共享版本
  • Git:分布式项目管理工具,目前整个行业内最流行最受欢迎的项目版本管理工具
  • 开发者:Linus Torvalds
  • 小故事开讲
    • Linux诞生以后,全球很多开发者开发了 很多个版本的Linux,提交给Linus Torvalds
    • Linus Torvalds 将优秀的代码集成在Linux内核中,手动管理所有的代码
    • Linus Torvalds 不喜欢传统的免费CVS等工具,因为这些工具不好用,好用的都收费
    • Linus Torvalds 选择了一个商业化的工具,达成协议–>可以免费使用
    • 于是团队中的一个哥们有个想法:–>能不能破解这个东西?
    • 被发现了–>Linus Torvalds 保证不再破解
    • 两周以后,Linus Torvalds 自己用C语言开发了Git,使用了类似于Linux的管理方式
    • Linus Torvalds :将Linux的版本控制切换到Git上
    • Git的开发汲取了其他的版本控制工具的优点,避免了缺点
    • 大佬的思维啊~~~

3、版本控制工具的对比

集中式:SVN

在这里插入图片描述

  • 所有版本的代码都集中在SVN的服务器上
  • 任何一个开发者,都只能连接SVN服务器,下载代码和上传新的版本
  • 集中式:所有的开发都围绕SVN服务器为核心
  • 缺点
    • 必须联网
    • 局域网:还是比较快的,但是回家以后就没办法开发了
      • 在公司下载好
      • 回家开发,只能开发一个版本
      • 回到公司上传这个版本
    • 互联网:特别慢
      • 在任何一个地方连接SVN服务器,进行下载和上传
    • 自己无法自动管理多个版本
    • SVN服务器存在单点故障

分布式:Git

在这里插入图片描述

  • 去中心化模式
  • 优点
    • 不需要联网,自己的笔记本就是个本地版本库,直接利用自己的笔记本实现版本的管理
    • 自己可以管理任意多个版本
    • 不需要担心公共的版本库故障,每个人的本地都有版本库

4、特点

  • 适合于分布式开发,多人可以共同开发,强调个体
  • 公共的版本库服务器的压力不会太大
  • 速度快、更加灵活
  • 任意的开发者之间如果产生冲突也容易解决
  • 不需要联网也可以实现多版本管理
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值