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