手册

术语表

添加

一个 Subversion 命令,用于将文件或目录添加到您的工作副本中。当您提交时,新项目将被添加到存储库中。

BASE 版本

工作副本 中文件或文件夹的当前基础版本。这是文件或文件夹在上次检出、更新或提交运行时的版本。BASE 版本通常不等于 HEAD 版本。

Blame

此命令仅适用于文本文件,它会注释每一行以显示最后更改该行的存储库版本以及进行该更改的作者。我们的 GUI 实现称为 TortoiseBlame,当您将鼠标悬停在修订号上时,它还会显示提交日期/时间和日志消息。

分支

版本控制系统中经常使用的一个术语,用于描述开发在特定点分叉并遵循 2 条独立路径时发生的情况。您可以从主开发线创建分支,以便开发新功能而不会使主线不稳定。或者,您可以分支一个稳定的版本,您只对它进行错误修复,而新开发则在不稳定的主干上进行。在 Subversion 中,分支被实现为一个 廉价副本

检出

一个 Subversion 命令,通过从存储库下载版本化的文件,在空目录中创建一个本地工作副本。

清理

引用 Subversion 手册: 递归地清理工作副本,删除锁并恢复未完成的操作。如果您遇到 工作副本锁定 错误,请运行此命令以删除陈旧的锁并将您的工作副本恢复到可使用状态。 请注意,在此上下文中,锁定 指的是本地文件系统锁定,而不是存储库锁定。

提交

此 Subversion 命令用于将您本地工作副本中的更改传递回存储库,从而创建一个新的存储库版本。

冲突

当存储库中的更改与本地更改合并时,有时这些更改会发生在同一行上。在这种情况下,Subversion 无法自动决定使用哪个版本,并且该文件被称为处于冲突状态。您必须手动编辑该文件并解决冲突,然后才能提交任何进一步的更改。

复制

在 Subversion 仓库中,您可以创建单个文件或整个树的副本。这些副本被实现为 廉价副本,它们类似于指向原始文件的链接,几乎不占用空间。创建副本会保留副本中项目的历史记录,因此您可以追踪在创建副本之前所做的更改。

删除

当您删除一个版本化的项目(并提交更改)时,该项目在提交的版本之后将不再存在于仓库中。但当然它仍然存在于之前的仓库版本中,因此您仍然可以访问它。如有必要,您可以复制一个已删除的项目并 恢复 它,包括其历史记录。

差异

显示差异” 的简写。当您想查看确切的更改内容时非常有用。

导出

此命令会生成一个版本化文件夹的副本,就像工作副本一样,但没有本地 .svn 文件夹。

FSFS

Subversion 仓库专有的文件系统后端。可以在网络共享上使用。1.2 及更高版本仓库的默认后端。

GPO

组策略对象。

HEAD 版本

文件或文件夹在 仓库 中的最新版本。

导入

Subversion 命令,用于将整个文件夹层次结构导入仓库,在一个版本中完成。

锁定

当您对一个版本化的项目进行锁定时,您会在仓库中将其标记为不可提交,除了锁定所在的本地工作副本之外。

日志

显示文件或文件夹的版本历史记录。也称为 历史记录

历史记录

显示文件或文件夹的版本历史记录。也称为 日志

合并

将仓库中的更改添加到您的工作副本的过程,不会破坏您已经在本地进行的任何更改。有时这些更改无法自动协调,工作副本被称为处于冲突状态。

当您更新工作副本时,合并会自动发生。您还可以使用 TortoiseSVN 的合并命令从另一个分支合并特定的更改。

补丁

如果工作副本中只有文本文件发生更改,可以使用 Subversion 的 Diff 命令生成一个包含这些更改的统一差异格式的单个文件摘要。这种类型的文件通常被称为 补丁,可以将其通过电子邮件发送给其他人(或邮件列表),并应用于另一个工作副本。没有提交权限的人可以进行更改并提交补丁文件,以便授权的提交者应用。或者,如果您不确定更改,可以提交补丁以供其他人审查。

属性

除了对目录和文件进行版本控制之外,Subversion 还允许您添加版本化的元数据 - 被称为 属性 到每个版本化的目录和文件。每个属性都有一个名称和一个值,类似于注册表项。Subversion 有一些它在内部使用的特殊属性,例如 svn:eol-style。TortoiseSVN 也有一些,例如 tsvn:logminsize。您可以添加自己的属性,使用您选择的任何名称和值。

重新定位

如果您的存储库移动了,可能是因为您已将其移动到服务器上的不同目录,或者服务器域名已更改,您需要 重新定位 您的工作副本,以便其存储库 URL 指向新位置。

注意:您应该仅在您的工作副本引用同一存储库中的同一位置,但存储库本身已移动时才使用此命令。在任何其他情况下,您可能需要使用 切换 命令。

存储库

存储库是存储和维护数据的中心位置。存储库可以是多个数据库或文件位于网络上进行分发的场所,也可以是用户可以直接访问的位置,而无需跨网络传输。

解决

当工作副本中的文件在合并后处于冲突状态时,必须由人类使用编辑器(或可能使用 TortoiseMerge)解决这些冲突。此过程称为 解决冲突。完成后,您可以将冲突文件标记为已解决,这将允许它们被提交。

还原

Subversion 会保留每个文件的本地 原始 副本,就像您上次更新工作副本时的状态一样。如果您进行了更改并决定要撤消它们,可以使用 还原 命令返回到原始副本。

修订版

每次提交一组更改时,您都会在存储库中创建一个新的 修订版。每个修订版都代表存储库树在其历史记录中的某个时间点的状态。如果您想回到过去,可以检查存储库在修订版 N 时的状态。

从另一个角度来看,修订版可以指创建该修订版时所做的更改集。

修订版属性 (revprop)

就像文件可以有属性一样,存储库中的每个修订版也可以有属性。当修订版创建时,会自动添加一些特殊的修订版属性,即:svn:date svn:author svn:log,分别代表提交日期/时间、提交者和日志消息。这些属性可以编辑,但它们不是版本化的,因此任何更改都是永久性的,无法撤销。

SVN

Subversion 的常用缩写。

Subversion 自定义协议的名称,由 svnserve 存储库服务器使用。

切换

就像 更新到修订版 改变工作副本的时间窗口以查看历史记录中的不同点一样,切换 改变工作副本的空间窗口,使其指向存储库的不同部分。它在处理 trunk 和分支时特别有用,因为只有少数文件不同。您可以将工作副本切换到两者之间,并且只有更改的文件会被传输。

更新

这个 Subversion 命令将存储库中的最新更改拉取到您的工作副本中,并将其他人做出的更改与工作副本中的本地更改合并。

工作副本

这是您的本地 沙盒,您在其中处理版本化文件的区域,通常位于您的本地硬盘上。您可以通过从存储库进行 检出 来创建工作副本,并使用 提交 将您的更改反馈到存储库中。

TortoiseSVN 主页