跳过正文
  1. 教程/
  2. Git 入门到实操:新手从 0 到会用提交、分支、回退和远程仓库/

Git、GitHub、GitLab 有什么区别

·664 字·2 分钟
Evan Wu
作者
Evan Wu
记录 AI、技术实践、效率工具、项目经验与学习思考。
Git Mastery - 系列专栏
✦ 2: 本文

Git、GitHub 和 GitLab 经常同时出现,但它们并不是同一个概念

Git
#

Git 是一款免费的、开源的分布式版本控制系统,最初由 Linux 操作系统创始人 林纳斯·托瓦兹 (Linus Torvalds) 于 2005 为了开发 Linux 核心所设计。

它安装在开发者的计算机中,通过命令行或图形化客户端运行。

常见 Git 命令包括:

git init
git add
git commit
git branch
git merge
git push
git pull
笔记

Git 本身不要求必须连接互联网,也不依赖 GitHub 或 GitLab。

GitHub
#

GitHub 是一个基于 Git 的代码托管和协作平台。该平台于2018年被微软以75亿美元正式收购,在被收购七年后的2025年,GitHub正式结束了独立运营状态,全面并入微软新成立的CoreAI工程集团,成为微软AI时代的关键一环。

它主要提供:

远程 Git 仓库
Pull Request
Issue
Actions 自动化
项目管理
代码评审
开源项目托管
团队权限管理

GitHub 可以理解为一个提供 Git 仓库存储和协作功能的平台。

GitLab
#

GitLab 同样是一个基于 Git 的代码托管和研发协作平台。与主要面向个人开发者和开源项目的 GitHub 不同,GitLab 更偏向于完整的 DevOps 生命周期,并且支持企业自建私有化部署。

它通常提供:

远程 Git 仓库
Merge Request
Issue
CI/CD
代码评审
权限控制
项目管理
私有化部署

很多企业会把 GitLab 部署在公司内部服务器中,用于管理内部代码。

三者的关系
#

Git:版本控制工具 GitHub:提供 Git 仓库托管和协作服务的平台 GitLab:提供 Git 仓库托管和研发流程管理的平台

Git 是基础工具,GitHub 和 GitLab 是建立在 Git 之上的平台。

GitHub 与 GitLab 常见术语区别
#

GitHub 常用:

Pull Request

GitLab 常用:

Merge Request

两者本质相似,都是申请把一个分支的代码合并到另一个分支。

例如:

feature/new
      main

开发者完成相应的功能开发后,可以创建 Pull Request 或 Merge Request,请求团队成员进行代码评审并合并。

Git Mastery - 系列专栏
✦ 2: 本文