Abe*_*bel 5 svn command-line visualsvn-server
不,这不是重复这个.
虽然我通常习惯使用SVN的可视化工具,但我发现自己现在面临着想要迁移Repo/Parent/ChildX/ChildY的问题Repo/ChildY.我收到以下错误,我只是在寻找我在这里缺少的东西.考虑刚安装的服务器(从转储),除了svn之外没有其他可用的服务器.
> svn checkout https://localhost/Repo svn: OPTIONS of 'https://localhost/Repo': 200 OK (https://localhost) > svn move Repo/Parent/ChildX/ChildY Repo/ChildY svn: 'Repo' is not a working copy svn: 'Repo' does not exist > svn move Parent NewParent svn: '.' is not a working directory > svn move https://localhost/Repo/Parent NewParent svn: Moves between the working copy and the repository are not supported > svn move https://localhost/Repo/Parent https://localhost/Repo/NewParent svn: OPTIONS of 'https://localhost/Repo': 200 OK (https://localhost) > svn commit --message "Trying to get move command to work" svn: 'C:\SVNTest' is not a working copy
我觉得有点奇怪的是,第一个命令(checkout)对我放在'Repo'后面的任何内容给出相同的响应,比如https://localhost/Repo/SomeNonExistingName.我确定我错过了什么.我发现参考资料说你不需要工作副本来进行搬迁,但是,我该怎么做?
上面的命令都没有,无论是给出错误还是OK,都做了实际的动作.我使用VisualSVN Server,可以在线浏览回购.
下面接受的解决方案和其他答案有助于解决此问题.对上面第一个命令的响应等于来自任何Apache服务器的常规响应.该200 OK HTTP响应.
当使用VisualSVN服务器,默认安装下 https://hostname/svn.要结帐,您需要在存储库名称前加上该路径.上面的第一个命令应该是:
> svn checkout https://localhost/svn/Repo file1 file2 etc... Revision XXX
不幸的是,这个小问题,无论多么微不足道,都没有在任何地方提到过.结帐后,从同一目录,移动变得微不足道:
> svn move Folder/SubFolder NewFolder
假设您有一个有效的结账,最简单的方法是这样的(用正确的 URL 替换 REPO_URL):
svn co REPO_URL
cd Repo
svn mv Parent/ChildX/ChildY .
svn commit -m "moved directory"
Run Code Online (Sandbox Code Playgroud)
当然,这是假设您没有标准的 trunk/tags/branches 目录。
这让我想到了您必须回答的问题:签出的工作目录是什么样的?它是否具有您期望的结构,或者是否有一些您不知道的目录?您.svn在 Repo 下看到目录了吗?
编辑:我从未使用过 Visual SVN 服务器,但如果您的存储库位于可访问的文件系统上,则始终可以使用“文件”URL:
svn co 'file:///localhost/Repo'
Run Code Online (Sandbox Code Playgroud)
或者(在刚刚查看了 VisualSVN 所谓的“文档”之后),我建议通过 Visual SVN 检查您的工作目录,然后执行上面的命令。
另外,Visual SVN 似乎创建了 trunk/tags/branches 目录,因此一旦您验证了目录结构,您肯定需要 cd 进入工作目录并在那里运行命令。
| 归档时间: |
|
| 查看次数: |
7582 次 |
| 最近记录: |