📜  SVN-基本概念

📅  最后修改于: 2020-10-31 14:14:23             🧑  作者: Mango


什么是版本控制系统?

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

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

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

VCS分为两类。

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

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

版本控制术语

让我们首先讨论将在本教程中使用的一些术语。

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

  • 主干:主干是所有主要开发工作所在的目录,通常由开发人员签出以从事项目。

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

    例如,LAST_STABLE_CODE_BEFORE_EMAIL_SUPPORT比

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

    修订:13

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

  • 工作副本:工作副本是存储库的快照。该存储库由所有团队共享,但是人们并不直接对其进行修改。而是每个开发人员签出工作副本。工作副本是一个私人工作场所,开发人员可以在此工作中保持与团队其他成员隔离的状态。

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