SVN - 基本概念



什么是版本控制系统?

版本控制系统 (VCS) 是一种软件,它帮助软件开发人员协同工作并维护其工作的完整历史记录。

以下是版本控制系统的目标。

  • 允许开发人员同时工作。
  • 不要覆盖彼此的更改。
  • 维护每个版本的所有内容的历史记录。

VCS 分为两类。

  • 集中式版本控制系统 (CVCS),以及
  • 分布式/去中心化版本控制系统 (DVCS)。

在本教程中,我们将只关注集中式版本控制系统,尤其是Subversion。Subversion 属于集中式版本控制系统,这意味着它使用中央服务器来存储所有文件并支持团队协作。

版本控制术语

让我们从讨论一些我们将在本教程中使用的术语开始。

  • 存储库:存储库是任何版本控制系统的核心。它是开发人员存储所有工作的中心位置。存储库不仅存储文件,还存储历史记录。存储库通过网络访问,充当服务器,版本控制工具充当客户端。客户端可以连接到存储库,然后他们可以将更改存储到/检索到/从存储库。通过存储更改,客户端使这些更改可供其他人使用,并且通过检索更改,客户端将其他人的更改作为工作副本。

  • 主干:主干是一个目录,所有主要开发都在其中进行,通常由开发人员检出以处理项目。

  • 标签:标签目录用于存储项目的命名快照。标签操作允许为存储库中的特定版本提供描述性和易记的名称。

    例如,LAST_STABLE_CODE_BEFORE_EMAIL_SUPPORT 比

    存储库 UUID:7ceef8cb-3799-40dd-a067-c216ec2e5247 和

    修订版本:13

  • 分支:分支操作用于创建另一条开发线。当您希望开发过程分叉成两个不同的方向时,它很有用。例如,当您发布版本 5.0 时,您可能希望创建一个分支,以便 6.0 功能的开发可以与 5.0 错误修复分开。

  • 工作副本:工作副本是存储库的快照。存储库由所有团队共享,但人们不会直接修改它。相反,每个开发人员都会检出工作副本。工作副本是一个私有工作区,开发人员可以在其中完成工作,同时与团队的其他成员隔离。

  • 提交更改:提交是从私有工作区到中央服务器存储更改的过程。提交后,更改将提供给所有团队成员。其他开发人员可以通过更新其工作副本来检索这些更改。提交是一个原子操作。要么整个提交成功,要么回滚。用户永远不会看到未完成的提交。

广告