关于 - 分布式
分布式
任何分布式 SCM (包括 Git) 最好的特性之一就是它的分布式特性。这意味着,您不必“检出”源代码的当前尖端,而是“克隆”整个存储库。
多个备份
这意味着,即使您使用集中式工作流程,每个用户本质上都拥有主服务器的完整备份。 在发生崩溃或损坏时,可以将这些副本推送以替换主服务器。 实际上,除非只有存储库的单个副本,否则 Git 没有单点故障。
任何工作流程
由于 Git 的分布式特性和出色的分支系统,几乎可以使用相对容易的方式实现无数个工作流程。
Subversion 风格的工作流程
集中式工作流程非常常见,特别是从集中式系统过渡过来的人员。 如果自您上次获取以来有人已推送,Git 将不允许您推送,因此所有开发人员都推送到同一服务器的集中式模型可以正常工作。
集成管理器工作流程
另一个常见的 Git 工作流程涉及集成管理器 - 即提交到“受祝福”存储库的单个人员。 然后,许多开发人员从该存储库克隆,推送到他们自己独立的存储库,并要求集成商拉取他们的更改。 这通常是在开源或 GitHub 存储库中看到的开发模型类型。
独裁者与副手工作流程
对于更大规模的项目,像 Linux 内核这样的开发工作流程通常是有效的。 在此模型中,有些人(“副手”)负责项目的特定子系统,他们合并与该子系统相关的所有更改。 另一个集成者(“独裁者”)只能从他/她的副手那里拉取更改,然后推送到每个人再次克隆的“受祝福”存储库。