1. Git (Linux)
Git Server
Git GUI
Git 手册
2. GitHub (Microsoft)
GitHub功能
3. GitLab (Google)
4. 源代码托管
最多使用列表
主要项目列举
5. 更多版本控制软件相关信息连接
6. 协作项目
7. 更多类型软件对比
1. Git (Linux)
https://en.wikipedia.org/wiki/Git
GIT是一个分布式版本控制用于跟踪的变化系统的源代码中的软件开发。它旨在协调程序员之间的工作,但它可用于跟踪任何文件集中的更改。其目标包括速度,数据完整性,以及对分布式非线性工作流程的支持。
Git由Linus Torvalds于2005 年创建,用于开发Linux内核,其他内核开发人员为其初始开发做出了贡献。自2005年以来,它目前的维护者是Junio Hamano。
与大多数其他分布式版本控制系统一样,与大多数客户端 - 服务器系统不同,每台计算机上的每个Git 目录都是一个完整的存储库,具有完整的历史记录和完整的版本跟踪功能,独立于网络访问或中央服务器。
Git是根据GNU通用公共许可证版本2 的条款分发的免费开源软件。
Git是目前应用最广泛的源代码管理工具
https://git.wiki.kernel.org/index.php/Main_Page
Git Wiki主页
https://git.wiki.kernel.org/index.php/GitProjects
https://git.kernel.org/
https://android.googlesource.com/
Git Server
由于Git是一个分布式版本控制系统,它可以作为开箱即用的服务器使用。它附带内置命令git daemon,启动在GIT协议上运行的简单TCP服务器。
专用Git HTTP服务器通过添加访问控制,通过Web界面显示Git存储库的内容以及管理多个存储库来帮助(以及其他功能)。
已经存在的Git存储库可以被克隆和共享,以供其他人用作集中式存储库。它也可以通过远程shell访问,只需安装Git软件并允许用户登录。Git服务器通常侦听TCP端口 9418.
Git GUI
https://en.wikipedia.org/wiki/Comparison_of_Git_GUIs
Git GUI的比较
https://www.cnblogs.com/sztom/p/10638150.html
https://git-scm.com/downloads/guis/
GUI客户端, Git附带了用于提交(git-gui)和浏览(gitk)的内置GUI工具,但是有几种第三方工具可供用户寻找特定于平台的体验。
Git 手册
https://git-scm.com/docs
https://git-scm.com/book/en/v2
快速参考指南: GitHub备忘单 (PDF)| Visual Git备忘单 (SVG | PNG)
https://github.github.com/training-kit/downloads/github-git-cheat-sheet.pdf
2. GitHub (Microsoft)
https://en.wikipedia.org/wiki/GitHub
https://github.com/
GitHub是一家美国公司,使用Git为软件开发版本控制提供托管服务。它是微软的子公司,于2018年以75亿美元被微软收购。
它提供了Git的所有分布式版本控制和源代码管理(SCM)功能,以及添加自己的功能。它为每个项目提供访问控制和一些协作功能,如错误跟踪,功能请求,任务管理和维基。
GitHub提供免费,专业和企业帐户的计划。免费GitHub帐户通常用于托管开源项目。
自2019年1月起,GitHub为所有计划提供无限的私人存储库,包括免费帐户。
如2019年5月的,GitHub的报告具有超过37M用户和100M库(包括至少28M个公共库),使其成为世界上最大的源代码主机。
吉祥物: https://octodex.github.com/
GitHub功能
除了源代码,GitHub还支持以下格式和功能:
- 文档,包括以各种Markdown类文件格式自动呈现的README文件(请参阅GitHub上的README文件)
- 使用标签,里程碑,受理人和搜索引擎进行问题跟踪(包括功能请求)
- 维基
- 通过代码审查和评论来提取请求
- 提交历史
- 图表:脉冲,贡献者,提交,代码频率,穿孔卡,网络,成员
- 集成目录[64]
- 统一和分裂差异
- 邮件通知
- 通过@提及他们来订阅某人通知的选项。[65]
- 表情符号[66]
- GitHub页面:小型网站可以在GitHub上的公共存储库中托管。URL格式为https:// username .github.io。[67]
- 文件中的嵌套任务列表
- 地理空间数据的可视化
- 3D渲染文件,可以使用新的集成STL文件查看器进行预览,该查看器在“3D画布”上显示文件。[68]观众由WebGL和Three.js提供支持。
- 可以预览Photoshop的原生PSD格式,并与同一文件的先前版本进行比较。
- PDF文档查看器
3. GitLab (Google)
https://en.wikipedia.org/wiki/GitLab
GitLab是一个基于Web的 DevOps生命周期工具,它提供了一个Git - 存储库管理器,使用由GitLab Inc.开发的开源许可证提供wiki,问题跟踪和CI/CD管道功能。
GitLab与GitHub差不多,提供代码托管及相关的服务。要深入使用才能理解体会他们之间的主要差异。具体区别请看:
https://zhuanlan.zhihu.com/p/23007198
GitHub & Bitbucket & GitLab & Coding 的对比分析
http://stackshare.io/stackups/github-vs-bitbucket-vs-gitlab
https://stackshare.io/stackups/bitbucket-vs-github-vs-gitlab
4. 源代码托管
https://en.wikipedia.org/wiki/Comparison_of_source-code-hosting_facilities
源代码托管设施的比较
最多使用列表
Name | Users | Projects | Alexa(2019) | OpenSource |
GitHub | 37000000 | 100000000 | 50 | GitHub 以开源友好而闻名, 但其本身不是开源的. |
GitLab | 100000 | 546000 | 1441 | GitLab 社区版的源代码开放在他们的网站上。MIT许可 |
Bitbucket | 5000000 | Unknown | 793 | 不开源, 但在购买托管服务的方案中提供了[产品定制]的功能。 |
主要项目列举
Bitbucket: PayPal, Tesla Motors, Bitbucket
GitHub: Apache, Node.js, Airbnb, Netflix, reddit, Docker, Yahoo!, Intel, Mozilla, StackShare, DigitalOcean
GitLab: IBM, Sony, NASA, Alibaba, Oracle, GNOME Foundation, SpaceX, Boeing, Autodata
5. 更多版本控制软件相关信息连接
https://en.wikipedia.org/wiki/Software_versioning
https://en.wikipedia.org/wiki/Version_control
版本控制 (VCS)
https://en.wikipedia.org/wiki/Software_configuration_management
软件配置管理 (SCM)
https://en.wikipedia.org/wiki/Software_release_life_cycle
软件发布生命周期
https://en.wikipedia.org/wiki/Product_life-cycle_management_(marketing)
产品生命周期管理(营销)
https://en.wikipedia.org/wiki/Rolling_release
滚动发布
https://en.wikipedia.org/wiki/List_of_version-control_software
版本控制软件列表
- C/S模式
- 开源: 从 CVS 到 Subversion (SVN);
- 专有: 微软的 Visual SourceSafe (VSS);
- 分布式模型
- 开源: 从 BitKeeper 到 Mercurial, 再到 Git;
- 专有: 微软的 Visual Studio Team Services;
还有很多很多... 已经或正在走向博物馆. 因为有了git, github, gitlab...
https://en.wikipedia.org/wiki/Versioning_file_system
版本控制文件系统
以下不是版本控制文件系统,但允许类似的功能。
ZFS支持瞬时快照和克隆
Btrfs支持快照
6. 协作项目
https://en.wikipedia.org/wiki/List_of_free_software_project_directories
自由软件项目目录列表
https://en.wikipedia.org/wiki/Collaborative_intelligence
协作情报
https://en.wikipedia.org/wiki/Commons-based_peer_production
以共享为基础的同行制作
以社区为基础的同伴制作(CBPP)是由哈佛大学法学院教授Yochai Benkler创造的一个术语。
它描述了一种新的社会经济生产模式,其中大量人员合作(通常通过互联网)。基于Commons的项目通常具有比更传统的商业模式更低的层次结构。通常 - 但不总是以公共为基础的项目的设计不需要为贡献者提供经济补偿。
例如,共享STL(文件格式)在互联网上自由设计对象的文件使任何拥有3-D打印机的人都可以数字复制(分布式制造)对象,从而节省了专业消费者的巨额资金。
使用基于公共资源的同行制作的项目示例包括:
- Linux,一个计算机操作系统内核
- GNU,一种通常与内核Linux结合使用的计算机操作系统
- Slashdot,新闻和公告网站
- Wikipedia,一个在线百科全书
- Distributed Proofreaders分布式校对,可以在Project Gutenberg上读取公共领域的内容,以便发布
- Sourceforge,一个软件开发组织
- RepRap Project,一个创建开源自复制3D打印机的项目。
- OpenStreetMap,一个免费的世界地图
- Wikiprogress,一个收集有关衡量社会进步的信息和数据的项目
- Ushahidi,众包地图
- Open Source Ecology开源生态学,一个设计和构建开源工业机器的项目,由eXtreme Manufacturing制造
- Zamphyr,一所免费的计算机科学教育学院
这些项目通常都会使用各种代码托管类服务统一协调管理。
7. 更多类型软件对比
https://en.wikipedia.org/wiki/Comparison_of_issue-tracking_systems
https://en.wikipedia.org/wiki/Comparison_of_help_desk_issue_tracking_software
https://en.wikipedia.org/wiki/Comparison_of_project_management_software
https://en.wikipedia.org/wiki/Comparison_of_CRM_systems
https://en.wikipedia.org/wiki/Comparison_of_accounting_software
https://en.wikipedia.org/wiki/Comparison_of_open-source_configuration-management_software 开源配置管理软件的比较
https://en.wikipedia.org/wiki/Comparison_of_revision_control_software
版本控制软件的比较(非常详细的比较)
https://en.wikipedia.org/wiki/Comparison_of_version-control_software
https://en.wikipedia.org/wiki/List_of_ERP_software_packages
https://en.wikipedia.org/wiki/List_of_websites_with_country_access_restrictions
具有国家访问限制的网站列表