gitlab 简介

1.gitlab 简介

1.1.定位

gitLab 是一个基于 Git 实现的在线代码仓库托管软件
可以用 gitlab 自己搭建一个类似于 Github 一样的系统,一般用于在企业、学校等内部网络搭建 git 私服。
对于软件工程质量管理非常重要。

1.2.功能

提供代码托管、提交审核和问题跟踪
可以很方便的管理权限、代码 review,创建、管理 project

1.3.版本

  • 社区版(CE)
  • 企业版(EE)
Gitlab 分为 社区版(CE) (gitlab-ce) 与 企业版(EE) (gitlab-ee),社区版免费,企业版收费
两个版本的区别参考官方文档:gitlab-ce VS gitlab-ee;

1.4.配置要求

  • 官方文档:

https://docs.gitlab.com/ee/install/requirements.html#cpu

基础:CPU-1,RAM-4G,用于调试安装,用起较慢
推荐:CPU-2,RAM-8G,可以支持100人使用

1.5.拓展:git于svn的区别

git 是分布式的,svn 是中心式的
git 分布式本地就可以用,可以随便保存各种历史痕迹,不用担心污染服务器,连不上服务器也能提交代码、查看 log。
GIT 分支和 SVN 的分支不同:分支在 SVN 中实际上是版本库中的一份 copy,而 git 一个仓库是一个快照,所以 git 切换、合并分支等操作更快速。

2.gitlab 服务组件

  • Nginx:静态 web 服务器。
  • gitlab-shell:用于处理 Git 命令和修改 authorized keys 列表。(Ruby)
  • gitlab-workhorse: 轻量级的反向代理服务器。(go)
    它会处理一些大的 HTTP 请求,比如文件上传、文件下载、Git push/pull 和 Git 包下载。
    其它请求会反向代理到 GitLab Rails 应用,即反向代理给后端的 unicorn。
    
  • logrotate:日志文件管理工具。
  • postgresql:数据库。
  • redis:缓存数据库。
  • sidekiq:用于在后台执行队列任务(异步执行)。(Ruby)
  • unicorn:An HTTP server for Rack applications,GitLab Rails 应用是托管在这个服务器上面的。(Ruby Web Server, 主要使用 Ruby 编写)
posted @ 2020-05-19 18:39  天生帅才  阅读(993)  评论(0编辑  收藏  举报
// 百度统计