Git - 版本控制工具

A source code versioning system that lets you locally track changes and push or pull changes from remote resources.

Git是一个开源的分布式版本控制系统。

Github - 开源代码库以及版本控制系统

GitHub is a publicly available, free service which requires all code (unless you have a paid account) be made open. Anyone can see code you push to GitHub and offer suggestions for improvement. GitHub currently hosts the source code for tens of thousands of open source projects.

分享开源项目的平台,为开发团队提供了存储、分享、发布和合作开发项目的中心化云存储的场所。作为一个分布式的版本控制系统,在Git中并不存在主库这样的概念,每一份复制出的库都可以独立使用,任何两个库之间的不一致之处都可以进行合并。GitHub同时提供公共仓库和私有仓库,但如果要使用私有仓库,是需要付费的。所以对开源项目而言,GitHub依然是代码托管的首选。

GitLab - 基于Git的项目管理软件

GitLab is a github like service that organizations can use to provide internal management of git repositories. SESYNC has setup a GitLab server for our researchers and staff to better collaborate.

也是基于Web的Git仓库,在很大程度上GitLab同GitHub类似。但开发团队对代码仓库拥有更多的控制,比如:

允许免费设置仓库权限;

允许用户选择分享项目部分代码;

允许用户设置项目获取权限,提升安全性;

可以设置获取到团队整体的改进进度等。