关于 - 分布式

  1. 分支与合并
  2. 小巧快速
  3. 分布式
  4. 数据完整性
  5. 暂存区
  6. 自由开源
  7. 商标

分布式

任何分布式 SCM(包括 Git)最棒的特性之一就是它的分布式特性。这意味着你不再是“检出”源代码的当前最新版本,而是“克隆”整个仓库。

多重备份

这意味着即使你正在使用集中式工作流,每个用户也基本拥有主服务器的完整备份。在主服务器崩溃或数据损坏时,每个副本都可以被推送上去以替换主服务器。实际上,除非只有一个仓库副本,否则 Git 没有单点故障。

任意工作流

由于 Git 的分布式特性和卓越的分支系统,几乎无限数量的工作流都可以相对轻松地实现。

Subversion 风格的工作流

集中式工作流非常常见,尤其对于从集中式系统迁移过来的人而言。如果自你上次抓取(fetch)以来有人推送过,Git 将不允许你推送,因此所有开发者都推送到同一个服务器的集中式模型也能很好地工作。

Workflow A

集成管理者工作流

另一种常见的 Git 工作流涉及一个集成管理者——一个单独的人提交到“受信任的”仓库。然后许多开发者从该仓库克隆,推送到他们自己的独立仓库,并请求集成者拉取他们的更改。这是在开源或 GitHub 仓库中常见的开发模型。

Workflow B

独裁者与副官工作流

对于更大型的项目,像 Linux 内核那样的开发工作流通常是有效的。在这种模式中,一些人(“副官”)负责项目的特定子系统,并合并与该子系统相关的所有更改。另一个集成者(“独裁者”)只能从他/她的副官那里拉取更改,然后推送到每个人再次克隆的“受信任的”仓库。

Workflow C

scroll-to-top