项目管理和代码托管平台-GitLab
2019-07-25 09:35:31 阿炯

GitLab是一个利用 Ruby on Rails 开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。GitLab 由乌克兰程序员 Dmitriy Zaporozhets 和 Valery Sizov 开发,它由 Ruby 写成,后来一些部分用 Go 语言重写。它由GitLab Inc.开发,使用MIT许可证的基于网络的Git仓库管理工具,且具有wiki和issue跟踪功能。


它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。它还提供一个代码片段收集功能可以轻松实现代码复用,便于日后有需要的时候进行查找。

GitLab 5.0以前版本要求服务器端采用 Gitolite 搭建,5.0版本以后不再使用 Gitolite ,采用自己开发的 gitlab-shell 来实现。如果你觉得安装麻烦可以使用 GitLab Installers 一键安装程序。Gitlab 从 12.1 版本开始将不再支持 MySQL

系统要求:
Debian
ruby 1.9.3+
postgresql or mysql
git
gitlab-shell
redis
Sidekiq


最新版本:12.1
合并训练的并行执行策略:加强了合并 TRAINS,以使用并行策略执行流水线,并行执行通过按顺序排列合并请求并启动受控的并行管道来加速验证。
合并机密问题的请求:公共项目中的机密问题就可以通过使用 Create confidential merge request 按钮在简化工作流中得到解决,该按钮可以在项目的私有分支中创建合并请求
Automatic certificate management using Let's Encrypt:添加新的自定义域的页面用户可以启用“Automatic certificate management using Let's Encrypt”。配置此设置后,GitLab 将自动从 Let's Encrypt 中获取证书,将它们提供给 GitLab 中的自定义域,跟踪过期日期并自动更新您的证书
Git 对象去重叠:创建公共项目的分支将创建一个对象池(如果不存在的话),并使用  objects/info/alternates 来减少叉的存储需求
SSH 上的 Git 项目别名:管理员可以使用新的 Project Alias API 将短项目别名映射到 GitLab 中的项目,从而降低迁移到 GitLab 的风险
伸缩式流道
实例管理员可以指定运行在每个管道上的 :include: 在实例中被创建
多重差异讨论
将组指定为代码所有者
现在可以通过 Releases API 创建一个“即将发布”的版本,这使得即将发布的版本按发布时间顺序显示在发布页面上,并显示未来日期版本的“即将发布”标签
GitLab.com(SaaS)自助服务计划升级
AsciDoc 代码块语法突出显示
改进的 ASciiDoc 格式
添加和支持了特性标志,以重新启用 Rugged 的实现,从而提高使用 NFS 的 GitLab 实例的性能
GitLab 现在为每个 Rails 请求会话共享相同的 Gitcat 文件进程
default关键字用于顶级.gitlab-ci.yml配置
部署板提供了在 Kubernetes 上运行的每个 CI 环境的当前健康状况和状态的综合视图,显示了部署中的 pod 状态
实例级群集 Web 终端访问
组级群集 Web 终端访问
根据观察应用程序状态所需的重要指标创建自定义仪表板
Knative 应用程序图表已更新为 v0.6
用 Prometheus 警报属性启用了对 GitLab 事件问题的注释
Geo 现在计算辅助节点上的附件、LFS 对象和作业工件的校验和,然后将其与存储的校验和进行比较,如果不匹配,则拒绝传输
GitLab 12.1 包含 Matterest 5.12,这是一种开源的 Slack 替代品,其最新版本包括无限滚动、BOT 帐户、更深层次的 Jira 集成等等
......
更多内容查看发行说明

最新版本:14.5
GitLab 14.5 已于2021年11月下旬正式发布,主要更新内容包括引入代码安全扫描、使用 CI/CD 隧道进行细粒度的权限控制、合并 PR 批准的 Group 层级设置、免费 K8s 代理、项目专题 (project topics) 等多项功能和改进。

引入代码安全扫描
Gitlab 14.5 引入了对基础设施即代码 (IaC) 配置文件的安全扫描。与所有的 SAST 扫描器一样,该功能也是免费开放。IaC 安全扫描器的初始版本支持 Terraform、Ansible、AWS CloudFormation 和 Kubernetes 配置文件扫描,并基于开源保持基础设施即代码安全 (KICS) 项目。新的 IaC 扫描功能加入了现有的 Kubernetes 清单 SAST 扫描器。

如果熟悉 GitLab SAST,IaC 扫描的工作原理完全相同,包括独立的 IaC 扫描 CI 配置文件、安全配置页面上基于 UI 的启用工具以及对所有终端漏洞管理功能的支持,包括安全仪表板和合并请求小部件。使用 IaC 扫描模板可轻松地使用其他扫描器扩展 IaC 扫描。

使用 CI/CD 隧道进行细粒度的权限控制
GitLab 14.5 发布了通用访问模拟和 CI/CD 作业模拟。这些模拟可以在 Agent 配置文件中进行指定,并且可以使用 Kubernetes RBAC 规则管理模拟的帐户权限。

项目专题 (project topics)
此版本在项目中增加了一个新的探索主题 (Explore topics) 选项卡。
主题可按受欢迎程度(具有此主题的项目数)进行排序
主题可以按名称搜索,然后按相似度和流行度排序

详情查看发行公告


项目主页:https://about.gitlab.com/