本文档旨在介绍 Subversion 1.4。如果您运行的是更新版本的 Subversion,我们强烈建议您访问 https://svnbook.subversion.org.cn/ 并查阅适合您 Subversion 版本的版本。
有两种方法可以将新文件导入您的 Subversion 仓库:svn import 和 svn add。我们将在本章中讨论 svn import,并在本章后面介绍典型的 Subversion 使用场景时讨论 svn add。
svn import 命令是一种快速将未版本化的文件树复制到仓库中的方法,它会根据需要创建中间目录。svn import 不需要工作副本,并且您的文件会立即提交到仓库。这通常用于您想要在 Subversion 仓库中开始跟踪现有的文件树时。例如
$ svnadmin create /usr/local/svn/newrepos
$ svn import mytree file:///usr/local/svn/newrepos/some/project \
-m "Initial import"
Adding mytree/foo.c
Adding mytree/bar.c
Adding mytree/subdir
Adding mytree/subdir/quux.h
Committed revision 1.
上面的示例将目录 mytree 的内容复制到仓库中 some/project 目录下
$ svn list file:///usr/local/svn/newrepos/some/project bar.c foo.c subdir/
请注意,导入完成后,原始树 不会 被转换为工作副本。要开始工作,您仍然需要 svn checkout 树的新工作副本。
虽然 Subversion 的灵活性能让您以任何您选择的方式布局您的仓库,但我们建议您创建一个 trunk 目录来保存开发的“主线”,一个 branches 目录来保存分支副本,以及一个 tags 目录来保存标签副本,例如
$ svn list file:///usr/local/svn/repos /trunk /branches /tags
您将在 第 4 章, 分支和合并 中了解有关标签和分支的更多信息。有关详细信息以及如何设置多个项目,请参阅 名为“仓库布局”的部分 和 名为“计划您的仓库组织”的部分,以详细了解“项目根目录”。