SVN – 基本概念
SVN – 基本概念
什么是版本控制系统?
版本控制系统(VCS) 是一种软件,可帮助软件开发人员协同工作并维护其工作的完整历史记录。
以下是版本控制系统的目标。
- 允许开发人员同时工作。
- 不要覆盖彼此的更改。
- 维护所有内容的每个版本的历史。
VCS 分为两类。
- 集中版本控制系统 (CVCS),以及
- 分布式/分散式版本控制系统 (DVCS)。
在本教程中,我们将只关注集中式版本控制系统,尤其是Subversion。Subversion 属于集中式版本控制系统,这意味着它使用中央服务器来存储所有文件并支持团队协作。
版本控制术语
让我们首先讨论我们将在本教程中使用的一些术语。
-
存储库:存储库是任何版本控制系统的核心。它是开发人员存储所有工作的中心位置。Repository 不仅存储文件,还存储历史。存储库通过网络访问,充当服务器,版本控制工具充当客户端。客户端可以连接到存储库,然后他们可以存储/检索对存储库的更改。通过存储更改,客户端将这些更改提供给其他人,并通过检索更改,客户端将其他人的更改作为工作副本。
-
主干:主干是所有主要开发发生的目录,通常由开发人员签出以进行项目。
-
标签:标签目录用于存储项目的命名快照。标签操作允许为存储库中的特定版本提供描述性和令人难忘的名称。
例如,LAST_STABLE_CODE_BEFORE_EMAIL_SUPPORT 比
存储库 UUID:7ceef8cb-3799-40dd-a067-c216ec2e5247 和
修订:13
-
分支:分支操作用于创建另一条开发线。当您希望开发过程分为两个不同的方向时,它很有用。例如,当您发布 5.0 版时,您可能想要创建一个分支,以便 6.0 功能的开发可以与 5.0 错误修复分开。
-
工作副本:工作副本是存储库的快照。存储库由所有团队共享,但人们不会直接修改它。相反,每个开发人员都会检查工作副本。工作副本是一个私人工作场所,开发人员可以在其中独立于团队的其他成员进行工作。
-
提交更改:提交是将更改从私人工作场所存储到中央服务器的过程。提交后,所有团队都可以使用更改。其他开发人员可以通过更新他们的工作副本来检索这些更改。提交是一个原子操作。要么整个提交成功,要么回滚。用户永远不会看到半完成的提交。