繁体   English   中英

svn 无法访问带有 @ 的 URL

[英]svn cannot access URL with a @ in it

我使用 PyCharm 重命名了我的项目的一个分支:我要求将我的分支 v4.0.0 重命名为 v5.0.0,但我不知道为什么,但 PyCham 在目标名称中添加了一个@ 我懂了:

svn ls svn+ssh://svn@devhost/myproject/branches/
v2.0.0/
v3.0.0/
v5.0.0@/   <----

现在,如果我尝试列出此分支中的文件,我会得到:

svn ls svn+ssh://svn@devhost/myproject/branches/v5.0.0@/
svn: warning: W160013: URL 'svn+ssh://svn@devhost/myproject/branches/v5.0.0' non-existent in revision 15667
svn: E200009: Could not list all targets because some targets don't exist

我尝试不使用@ ,或者使用%40代替:我有相同的消息。 我尝试了-r <some revision>选项来查看它是否是一个修订问题,但它没有帮助。 我尝试再次使用 PyCharm 将v5.0.0@重命名为v5.0.0 :它告诉我不能重命名为自身。 我尝试再次使用 PyCharm 将v5.0.0@重命名为v4.0.0 :它再次用@重命名了v4.0.0@

有趣的是 pycharm 仍然可以在svn+ssh://svn@devhost/myproject/branches/v5.0.0@/

在我的终端上, svn ls不起作用, svn co也不起作用! 我自己无法创建工作副本!

问题:如何将分支v5.0.0@重命名为v5.0.0

如您所知, @表示颠覆中的“挂钩和操作修订” - 这是“意外”行为的原因。 如果您需要在文件名中使用,则应将其加倍:

svn ls svn+ssh://svn@devhost/myproject/branches/v5.0.0@@/
# or remove the @ char
svn mv svn+ssh://svn@devhost/myproject/branches/v5.0.0{@@,}/

请参阅SVNbookPeg and Operative Revisions章节:

这种解决方法甚至适用于以 at 符号结尾的路径——您可以使用filename@@来讨论名为filename@的文件。

它也适用于工作副本。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM