【gitlab】简介

GitLab是一个开源的仓库管理系统,提供与GitHub类似的在线代码管理功能,但需服务器安装。GitLab具备分布式特性,强大的分支管理和权限管理,支持离线提交,集成多种开发工具,具有内置高可用性。其主要服务包括nginx、gitlab-shell、gitlab-workhorse等。工作流程包括创建项目、分支、代码编写、推送、代码审查和合并。

一、gitlab介绍

1、gitlab简介

    GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的Web服务。

       可通过Web界面进行访问公开的或者私人项目。它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。团队成员可以利用内置的简单聊天程序(Wall)进行交流。它还提供一个代码片段收集功能可以轻松实现代码复用。

2、gitlab与github的区别

1)github是分布式在线代码托管仓库,个人版本可直接在线免费使用,企业版本收费且需要服务器安装。

2)gitlab是分布式在线代码仓库托管软件,分社区免费版本与企业收费版本,都需要服务器安装。

3、git和svn区别

1)git 是分布式的,svn 是中心式的。

2)git 分布式本地就可以用,可以随便保存各种历史痕迹,不用担心污染服务器,连不上服务器也能提交代码、查看 log。

3)GIT 分支和 SVN 的分支不同:分支在 SVN 中实际上是版本库中的一份 copy,而 git 一个仓库是一个快照,所以 git 切换、合并分支等操作更快速。

4、gitlab的优势

1. 开源免费,社区免费版本适合中小型公司;

2. 差异化的版本管理,离线同步以及强大分支管理功能;

3. 便捷的GUI操作界面以及强大账户权限管理功能;

4. 集成度很高,能够集成绝大多数的开发工具;

5. 支持内置HA,保证在高并发下仍旧实现高可用性。

5、gitlab主要服务构成

GitLab由主要由以下服务构成,他们共同承担了Gitlab的运作需要

nginx: 静态web服务器
gitlab-shell: 用于处理Git命令和修改authorized keys列表
gitlab-workhorse: 轻量级的反向代理服务器
logrotate:日志文件管理工具
postgresql:数据库
redis:缓存数据库
sidekiq:用于在后台执行队列任务(异步执行)
unicorn:HTTP服务,GitLab Rails应用是托管在这个服务器上面的。

主要配置文件目录

主配置文件: /etc/gitlab/gitlab.rb
文档根目录: /opt/gitlab
默认存储库位置: /var/opt/gitlab/git-data/repositories
Nginx配置文件: /var/opt/gitlab/nginx/conf/gitlab-http.conf
Postgresql数据目录: /var/opt/gitlab/postgresql/data

6、gitlab的工作流程:

1. 创建并克隆项目

2. 创建项目某Feature分支

3. 编写代码并提交至该分支

4. 推送该项目分支至远程Gitlab服务器

5. 进行代码检查并提交Master主分支合并申请

6. 项目领导审查代码并确认合并申请

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值