Svn 如何在Subversion中移动/重命名包含@characters的文件
从: 敏锐的读者可能会想知道,此时peg修订语法是否会导致实际包含at符号的复制路径或URL的工作出现问题。毕竟,svn如何知道news@11是我的目录树中的目录名,还是只是“新闻第11版”的语法?谢天谢地,虽然svn总是假设后者,但有一个简单的解决方法您只需要在路径的末尾附加一个at符号,例如news@11@. svn只关心参数中的最后一个at符号,在该at符号之后省略一个literal-peg-revision说明符并不违法。此解决方法甚至适用于以at符号结尾的路径,您可以使用filename@来谈论名为filename@.Svn 如何在Subversion中移动/重命名包含@characters的文件,svn,character,rename,move,at-sign,Svn,Character,Rename,Move,At Sign,从: 敏锐的读者可能会想知道,此时peg修订语法是否会导致实际包含at符号的复制路径或URL的工作出现问题。毕竟,svn如何知道news@11是我的目录树中的目录名,还是只是“新闻第11版”的语法?谢天谢地,虽然svn总是假设后者,但有一个简单的解决方法您只需要在路径的末尾附加一个at符号,例如news@11@. svn只关心参数中的最后一个at符号,在该at符号之后省略一个literal-peg-revision说明符并不违法。此解决方法甚至适用于以at符号结尾的路径,您可以使用filenam
根据此描述,您只需要在路径中添加@符号 因此: svn添加“C:\SomeTests\my@file.txt" 给我这个错误: svn:E200009:'C:/SomeTests/my@file.txt“:此处不允许使用peg修订 这是: svn添加“C:\SomeTests\my@file.txt@" 对我有用 这也适用于我: svn信息“C:\SomeTests\my@file.txt@" 详情如下:
好的。 但是当我想重命名或移动带有@字符的文件时。它提供了奇怪的结果: 与: svn mv“C:\SomeTests\test.txt”C:\SomeTests\my@file.txt" 我得到这个文件名: C:\SomeTests\my@file.txt 与: svn mv“C:\SomeTests\test.txt”C:\SomeTests\my@file.txt@" 我得到这个文件名: my@file.txt@ 与: svn mv“C:\SomeTests\test.txt”“C:\SomeTests\@myfile.txt” 我得到这个文件名: somefolder@myfile.txt 与: svn mv“C:\SomeTests\test.txt”“C:\SomeTests\@myfile.txt” 我得到这个文件名: @myfile.txt@ 我该怎么做才能一直有效? 不管@符号是在开始,在中间还是在结尾?
(编辑:在我目前的版本中,角色总是放在开头或第二位。)我已尝试在任何地方获得支持。 但现在我已经通过反复试验找到了解决办法 只需按如下方式运行命令:
svn mv "C:\@File.txt@\" "C:\@NewFile.txt/"
在源路径中添加@(At)和\(反斜杠)。
并将/(正斜杠)添加到目标路径。
它适用于我的每个选项:
@File to NoAtFile
@File to New@File
@File to @NewFile
NoAtFile to New@File
NoAtFile to @NewFile
_@File to NoAtFile
_@File to New@File
_@File to @NewFile
我希望这能帮你省去我的麻烦。:) 大问题;有疑问的答案。。。 这似乎是输入错误;可能不是从命令行复制的。我目前不在Windows上,因此无法在那里测试您的解决方案。 另外,在Linux上,我正在使用名称中带有和at符号的svn重命名一个目录
svn mv "WindowListGroup@bcdev.arch@gmail.com@" "AdvancedWindowList@bcdev.arch@gmail.com"
请注意,源代码末尾的一个@可以转义名称中的任意数量的@。目的地是照字面理解的
另见: