Git、Gitlab、Github简介

63 阅读2分钟

Git、Gitlab、Github简介

git

  • Linus在1991年创建了开源的Linux内核,从此Linux便不断快速发展,早期是由Linus本人通过手工管理代码,Linus坚决地反对使用CVS和SVN,理 由是集中式的版本控制系统不但速度慢、且必须联网才能使用,到2002年Linux系统已经发展了十年了,代码量之大让Linus很难继续通过手工方式 管理了,于是Linus选择了一个商业的版本控制系统BitKeeper,BitKeeper的东家BitMover公司出于人道主义精神,授权Linux社区免费使用这个版 本控制系统,不过2005年开发Samba的Andrew试图破解BitKeeper的授权协议(这么干的其实也不只他一个),结果被BitMover公司发现了,于是 BitMover公司要收回Linux社区的免费使用权,这时候如果Linus可以向BitMover公司道个歉,保证以后严格管理社区使用规范,但是Linus没有道 歉、而是自己居家办公、花了两周时间、自己用C写了一个分布式版本控制系统、这就是Git(github.com/git/git),然后… Linux内核的源码就全部迁移到Git进行版本控制管理了。
  • git客户端支持MacOS、linux、windows等系统。

Gitlab:

  • 基于git实现的企业级私有代码版本控制系统,安装包下载地址:packages.gitlab.com/gitlab/gitl…
  • Gitlab分为企业版和社区版
  • Gitlab可以实现CI/CD

GitHub:

  • 基于git实现的公有版本控制系统,部分功能需要付费使用
  • 2018年6月,微软以75亿美元买下 GitHub

分支模型简介

image.png

分支简介

  • master: 主分支。
  • develop:开发分支。
  • release:预发布分支。
  • feature:新特性分支。(少)
  • hotfix:bug修复分支。(少)

开发模式

  • 单分支模型----创建一个master分支 生产/开发模型--同时有master、develop分支
  • 特性/发布模型--同时有master、develop、 feature类型分支
  • 开发/发布分离模型-同时有master、develop、 feature、release分支
  • 开发/发布/缺陷分离模型--同时有master、 develop、feature、release、hotfix分支