趋近智
origin 和 upstream版本控制系统通过不同的架构方式实现其核心功能。历史上,管理版本主要有两种架构方式:集中式和分布式。了解这种区别很重要,因为它解释了Git提供的许多优点。
想象一个图书馆,每本书只有一个主副本。要进行修改,你需要借出这本书,编辑它,然后再还回。集中式版本控制系统的工作方式与此类似。
在CVCS中,有一个单独的中央服务器存储所有版本化的文件及其历史记录。开发人员或“客户端”连接到这个中央服务器以“检出”他们需要处理的文件。当他们做出修改后,他们将这些修改直接“提交”回中央服务器。流行的CVCS例子包括Subversion (SVN) 和CVS。
这里是CVCS模式的一个简化视图:
集中式VCS有一个主服务器保存所有历史记录,开发人员直接与其交互。
CVCS的优点:
CVCS的缺点:
分布式版本控制系统,如Git,采用了一种根本不同的方法。开发人员不再仅仅检出文件的最新版本,而是“克隆”整个仓库,包括其完整历史记录。
回想一下图书馆的比喻。在分布式模式下,这就像每个人都有自己的复印机,并制作了整个图书馆的完整副本。他们可以在自己的副本中阅读任何书籍,比较过去的版本,并完全撰写新草稿。当他们想分享自己的新草稿时,他们会与其他人或主图书馆进行协调。
对于DVCS,每个开发人员的工作副本也都是一个包含项目历史记录的完整仓库。这意味着大多数操作,如提交更改、查看旧版本、创建分支和比较差异,都在开发人员的本地机器上执行。它们非常快速,因为它们不需要网络访问。协作是通过同步仓库发生的——将你的本地更改推送到另一个仓库,或从另一个仓库拉取更改到你的仓库。虽然通常会将一个仓库指定为“中央”或“源”仓库(例如GitHub或GitLab上托管的仓库),但Git本身并不强制这样做;任何仓库在技术上都可以与任何其他仓库同步。
这里是DVCS模式的一个简化视图:
分布式VCS为每个开发人员提供仓库历史的完整副本,支持本地操作和灵活的同步。
DVCS(如Git)的优点:
DVCS的缺点:
尽管集中式系统完成了其职责,Git及其他DVCS提供的分布式模式已成为现代软件开发和协作的标准。它抗数据丢失的能力、本地操作的速度以及离线工作和以多种方式进行协作的灵活性,都是显著的优点。本课程侧重于Git,最流行的DVCS,为你提供有效管理项目所需的技能,采用这种有用的分布式方法。
这部分内容有帮助吗?
© 2026 ApX Machine Learning用心打造