Subversion / SVN:我可以导入到本地 repository/directory 吗?

Subversion / SVN: can I import into a local repository/directory?

我正在尝试在我的本地驱动器上创建一个全新的 Subversion 存储库,但是在成功 svnadmin create 之后,并创建了相应的目录树(conf/、db/、hooks/、locks/ , 格式), 我不能 运行 svn import 命令:

> cd D:\TestPrj

> svnadmin create "D:/svn/test/"

> svn import . "D:/svn/test/"
svn: E205000: Too many arguments to import command

> svn import "D:/svn/test/"
svn: E205000: Too many arguments to import command

> svn import . "\localhost\d\svn\test\"
svn: E020024: Error resolving case of '\localhost\d\svn\test"'

> svn import . "file:///D/svn/test/"
svn: E205000: Too many arguments to import command

我尝试使用本地路径语法、URL 语法和 Microsoft 特定语法,但 none 似乎是正确的。

好的,循序渐进

svnadmin create "D:/svn/test/"

好的,如果你在这个目录中得到普通的 FS-tree of repo(我看到了,你得到了)

svn import . "D:/svn/test/"

失败。根据SVN Book,format if import是svn import [PATH] URL(注意最后一句话:URL)。即:

  • 如果您在 中有一些数据。 ("D:\TestPrj")
  • 如果你想将它添加到存储库中,放置在 D:/svn/test/ 并且不由任何支持 SVN 的服务器提供服务
  • 必须 在 URL 中使用 file:/// 协议和完整的物理路径,不带引号 URL

我想不起来也无法测试,路径中是否有反斜杠或斜杠,你必须尝试一下(我想从反斜杠开始)

Remember that Subversion expects all repository paths in the form file:///C:/SVNRepository/. Note the use of forward slashes throughout

svn import . file:///D:/svn/test

但我建议执行(导入前)两个额外的步骤以使生活更轻松

  1. 不要导入到root,按照推荐的repo-tree在root中创建/trunk /branches /tags层级(导入到trunk不需要预先创建trunk,因为"Parent directories are created in the repository as necessary...")
  2. 运行 svnserve 简单快速模式(在 127.0.0.1 上收听,root 是你的 repo 的根目录) 并导入到 svn://localhost/trunk(或者根据 您的选择 可能略有不同的路径)并且不解决物理路径、引号、斜杠
  3. 的问题