GitLab是一个基于Git的开源仓库管理系统,使用Git作为代码管理工具,并在此基础上搭建起来的Web服务。可通过Web界面进行访问开发的或者私人项目。它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览器提交过的版本并提供一个文件历史库。团队成员可以利用内置的简单聊天程序(Wall)进行交流。它还提供一个代码片段收集功能可以轻松实现代码复用。它是一个基于Ruby on Rails构建的开源代码管理平台,主要用于管理软件开发过程中产生的代码和文档。GitLab主要针对group和project两个维度进行代码和文档管理,其中group是
群组,project是工程项目。一个group可以管理多个project,可以理解为一个群组中有多项软件开发任务,而一个project中可能包含多个branch,意为每个项目中有多个分支,分支间相互独立,不同分支可以进行归并。GitLab还具有wiki以及在线编辑、issue跟踪功能、CI/CD等功能。GitLab Inc.是提供GitLab的开源公司,由
乌克兰开发者Dmitriy Zaporozhets和
荷兰开发者Sytse Sijbrandij创建。GitLab Inc.采用远程工作模式,拥有约3000名员工,GitLab拥有约3000万注册用户,其中100万是活跃的许可用户。GitLab的核心功能是以MIT许可证发布的开源软件,而其他功能则采用专有许可证。GitLab Inc.在2018年被认定为部分乌克兰的独角兽企业。
含义
GitLab是由GitLabInc.开发,使用MIT许可证的基于网络的Git仓库管理工具,且具有wiki和issue跟踪功能。使用Git作为代码管理工具,并在此基础上搭建起来的web服务。
GitLab由
乌克兰程序员DmitriyZaporozhets和ValerySizov开发,它由
Ruby写成。后来,一些部分用Go语言重写。截止2018年5月,该公司约有290名团队成员,以及2000多名开源贡献者。GitLab被IBM,
索尼,JülichResearchCenter,
美国航空航天局,Alibaba,Invincea,O’ReillyMedia,Leibniz-Rechenzentrum(LRZ),CERN,
SpaceX等组织使用。
应用特点
2.基于MIT代码发布协议。
3.需要gitolite协同工作。
历史
最初,该产品命名为GitLab,是完全免费的开源软件,按照MIT许可证分发。
2013年7月,产品被拆分为:GitLabCE(社区版)和GitLabEE(企业版),当时,GitLabCE和GitLabEE的许可仍然是根据MIT许可分发的免费和开源软件。
2014年2月,GitLab宣布采用开放核心业务模式。GitLabEE设置在专有许可证下,并且包含CE版本中不存在的功能。
2015年7月,公司又筹集了150万美元的
种子基金。截至2015年的客户包括
阿里巴巴集团,IBM和
SpaceX。
2015年9月,GitLab从KhoslaVentures筹集了400万美元的A系列资金。
2016年7月,GitLabCEO确认了公司的开放核心功能。
2016年9月,GitLab从AugustCapital和其他公司筹集了2000万美元的B系列资金。
2017年1月31日,Gitlab发布一系列紧急通告称,位于
荷兰的系统管理员因操作失误而删除了包含310GB产品数据的文件夹,在取消删除操作后仅剩下4.5GB。运维人员之后检查发现,网站宣称和配备的多项备份措施均未正常运作或难以利用。Gitlab在
YouTube直播了恢复数据的过程。网站最终丢失了最后6小时的数据库数据(包括问题、合并请求、评论、片段等,不含代码库)。
2017年10月9日,C轮融资,GitLab Inc.获得 GV 领投,Telstra Ventures、Matt Mullenweg(个人)和INKEF Capital跟投的2000万美元资金。
2018年9月19日,D轮融资,GitLab Inc.获得 GS Growth 和 ICONIQ Capital 领投,Khosla Ventures、GV和INKEF Capital跟投的1亿美元投资。
2019年9月12日,E轮融资,GitLab Inc.获得 Goldman Sachs 和 ICONIQ Capital 领投,Y Combinator、Coatue、Adage Capital Management等跟投的2.68亿美元投资。
2021年3月18日,开源平台GitLab宣布成立中国合资公司,取名为“
极狐信息技术(湖北)有限公司”,合资方还包括红杉宽带、高成资本,首轮获得数亿元人民币投资。
2021年9月17日,GitLab Inc.向美国证券交易委员会(SEC)提交了S-1注册声明,涉及拟议的首次公开募股(IPO)。
2021年10月14日,公司在纳斯达克全球精选市场开始交易,股票代码为“GTLB”。
2022年4月11日,北京极狐(GitLab)正式宣布A轮融资签约完成,融资金额达数亿元人民币。
git
Git(/ɡɪt/,音频)是一个分布式版本控制软件,最初由
林纳斯·托瓦兹(LinusTorvalds)创作,于2005年以GPL发布。最初目的是为更好地管理
Linux内核开发而设计。应注意的是,这与GNUInteractiveTools(一个类似NortonCommander界面的文件管理器)有所不同。
git最初的开发动力来自于BitKeeper和Monotone。git最初只是作为一个可以被其他前端(比如Cogito或Stgit)包装的后端而开发的,但后来git内核已经成熟到可以独立地用作版本控制。很多著名的软件都使用
Git进行
版本控制,其中包括Linux内核、X.Org服务器和OLPC内核等项目的开发流程。
Go语言
Go(又称Golang)是
谷歌开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的
编程语言。
罗伯特·格瑞史莫,罗勃·派克(RobPike)及肯·汤普逊于2007年9月开始设计Go,,稍后IanLanceTaylor、RussCox加入项目。Go是基于Inferno操作系统所开发的。Go于2009年11月正式宣布推出,成为
开放源代码项目,并在
Linux及
Mac OS平台上进行了实现,后来追加了Windows系统下的实现。
目前,Go每半年发布一个二级版本(即从a.x升级到a.y)。
CI/CD
GitLab CI/CD是GitLab内置的一款工具,用于通过持续方法论的软件开发。该持续方法论包含三个部分:持续集成、持续交付、持续部署。持续集成(Continuous Integration,简称CI),每次在上传代码块到基于Git仓库时,持续集成会运行脚本去构建、测试、校验代码,这些操作是在合并到默认分支之前进行的。持续交付(Continuous Delivery,简称CD),在持续集成之后(即合并到默认分支之后),持续交付将进行手动部署应用。持续部署(Continuous Deployment,简称CD),在持续集成之后(即合并到默认分支之后),持续部署将进行自动部署应用。