小编典典

如何在 Subversion 托管文件名中转义 @ 字符?

all

对于许多 Subversion 操作,将“@”符号附加到文件或 URL 参数的末尾允许您定位该文件的特定版本。例如,“svn info
test.txt@1234”将提供有关 test.txt 的信息,因为它存在于修订版 1234 中。

但是,当文件名包含 @ 时,Subversion 会错误地将其解释为修订说明符:

svn info ‘test@.txt’ svn: 语法错误解析修订版 ‘.txt’

我尝试过双引号和单引号以及使用“/”、“\”和“@”转义。如何告诉 Subversion 将 @ 符号视为文件名的一部分?


阅读 79

收藏
2022-07-14

共1个答案

小编典典

来自SVN 书(强调添加):

敏锐的读者此时可能想知道 peg 修订语法是否会导致工作副本路径或实际上具有 at 符号的 URL 出现问题。毕竟, svn
是如何知道news@11我的树中的目录名称还是“ 新闻 第 11 版”的语法?值得庆幸的是,虽然 svn
总是假设后者,但有一个简单的解决方法。 您只需在路径末尾附加一个 at 符号 ,例如news@11@. svn 只关心参数中的最后一个
at 符号,并且在 at 符号之后省略文字 peg 修订说明符并不被认为是非法的。此解决方法甚至适用于以 at
符号结尾的路径——您将使用filename@@谈论一个名为 filename@ 的文件。

2022-07-14