本节将向您展示如何在小型测试存储库中尝试一些最常用的功能。当然,它不会解释所有内容 - 这毕竟只是快速入门指南。一旦您开始运行,您应该花时间阅读本用户指南的其余部分,它将更详细地介绍各种内容。它还解释了有关设置适当的 Subversion 服务器的更多信息。
对于实际项目,您将在安全的地方设置一个存储库,并使用 Subversion 服务器来控制它。在本教程中,我们将使用 Subversion 的本地存储库功能,该功能允许直接访问硬盘驱动器上创建的存储库,而无需任何服务器。
首先在您的 PC 上创建一个新的空目录。它可以放在任何地方,但在本教程中,我们将将其称为 C:\svn_repos
。现在右键单击新文件夹,然后从上下文菜单中选择 → 。然后在文件夹内创建存储库,准备供您使用。我们还将通过单击 按钮来创建默认的内部文件夹结构。
本地存储库功能对于测试和评估非常有用,但除非您是单人在一台 PC 上工作,否则您应该始终使用适当的 Subversion 服务器。在一个小型公司中,避免设置服务器的工作,直接访问网络共享上的存储库,这很诱人。永远不要这样做。您将丢失数据。阅读 名为“访问网络共享上的存储库”的部分,了解为什么这是一个坏主意,以及如何设置服务器。
现在我们有了存储库,但目前它完全是空的。假设我在 C:\Projects\Widget1
中有一组文件,我想添加它们。在资源管理器中导航到 Widget1
文件夹,然后右键单击它。现在选择 → ,这将弹出一个对话框
Subversion 存储库通过 URL 引用,这使我们能够指定互联网上的任何地方的存储库。在这种情况下,我们需要指向我们自己的本地存储库,其 URL 为 file:///c:/svn_repos/trunk
,并在其中添加我们自己的项目名称 Widget1
。请注意,file:
后面有 3 个斜杠,并且在整个过程中都使用正斜杠。
此对话框的另一个重要功能是 导入消息 框,它允许您输入描述您正在执行的操作的消息。当您查看项目历史记录时,这些提交消息将成为对所做更改及其原因的宝贵指南。在这种情况下,我们可以说一些简单的话,比如 “导入 Widget1 项目”。单击 ,文件夹将添加到您的存储库中。
现在我们已经在仓库中创建了一个项目,我们需要创建一个工作副本用于日常工作。请注意,导入文件夹并不自动将该文件夹变成工作副本。Subversion 中创建新工作副本的术语是 检出
。我们将检出仓库中的 Widget1 文件夹到 PC 上名为 C:\Projects\Widget1-Dev
的开发文件夹。创建该文件夹,然后右键单击它并选择 → 。然后输入要检出的 URL,在本例中为 file:///c:/svn_repos/trunk/Widget1
,然后单击 。我们的开发文件夹将被仓库中的文件填充。
在默认设置中,检出菜单项不在 TortoiseSVN 子菜单中,而是显示在顶部的资源管理器菜单中。不在子菜单中的 TortoiseSVN 命令前面会加上 SVN
:
您会注意到,此文件夹的外观与我们的原始文件夹不同。每个文件在左下角都有一个绿色的勾号。这些是 TortoiseSVN 的状态图标,仅在工作副本中存在。绿色状态表示文件与仓库中的版本没有变化。
开始工作。在 Widget1-Dev
文件夹中,我们开始编辑文件 - 假设我们对 Widget1.c
和 ReadMe.txt
进行更改。请注意,这些文件上的图标覆盖现在已变为红色,表示已在本地进行了更改。
但是更改是什么?右键单击其中一个已更改的文件,然后选择
→ 。TortoiseSVN 的文件比较工具启动,显示了哪些行已更改。
好的,我们对更改感到满意,让我们更新仓库。此操作称为对更改进行 提交
。右键单击 Widget1-Dev
文件夹,然后选择 → 。提交对话框列出了已更改的文件,每个文件都有一个复选框。您可能只想选择其中一部分文件,但在本例中,我们将提交对这两个文件的更改。输入一条消息来描述更改的内容,然后单击 。进度对话框显示文件正在上传到仓库,您就完成了。
随着项目的发展,您需要添加新文件 - 假设您在 Extras.c
中添加了一些新功能,并在现有的 Makefile
中添加了引用。右键单击文件夹并选择 → 。添加对话框现在将显示所有未版本化的文件,您可以选择要添加的文件。另一种添加文件的方法是右键单击文件本身并选择 → 。
现在,当您提交文件夹时,新文件将显示为 已添加,而现有文件将显示为 已修改。请注意,您可以双击修改后的文件以检查确切的更改内容。
TortoiseSVN 最有用的功能之一是日志对话框。它显示了您对文件或文件夹进行的所有提交的列表,并显示了您输入的详细提交消息(您确实输入了提交消息,如建议的那样?如果没有,现在您就会明白为什么这很重要)。
好吧,我在这里稍微作弊了一下,使用了 TortoiseSVN 存储库的屏幕截图。
顶部窗格显示了提交的修订版本列表以及提交消息的开头。如果您选择其中一个修订版本,中间窗格将显示该修订版本的完整日志消息,底部窗格将显示更改的文件和文件夹列表。
每个窗格都有一个上下文菜单,它提供了更多使用信息的方法。在底部窗格中,您可以 双击 文件以查看该修订版本中所做的确切更改。阅读 名为“修订版本日志对话框”的部分 以获取完整的故事。