【问题标题】:Subversion 1.7 vs 1.8 relative (^) symbol odditiesSubversion 1.7 vs 1.8 相对 (^) 符号奇怪
【发布时间】:2013-09-05 15:37:04
【问题描述】:

我有一个从两台不同机器访问的外部 Subversion 存储库,一台使用 svn v1.7.9,另一台使用 v1.8.3。

从 v1.7.9 开始,我可以使用带有相对 (^) 符号的 svn ls 命令,它可以按预期工作(从 repo 的根目录开始)...

# svn ls ^/tags
v1-0-0/
v1-1-0/
v1-2-0/
etc

从 v1.8.3 开始,我尝试相同的命令并得到以下内容...

# svn ls ^/tags
zsh: no matches found: ^/tags

如果我从 v1.8.3 运行 svn info,我可以看到预期的 Relative URL: ^/trunk 输出(在 v1.8 中添加),但似乎我无法使用相对级别超过该级别(到根) (^) 符号,例如...

# svn ls ^/
[returns a list of all files/directories in trunk]

这意味着使用相对符号时,几乎所有命令(切换/复制/合并等)都会失败。有什么想法可以解决这个问题吗?

【问题讨论】:

    标签: svn tags ls trunk


    【解决方案1】:

    好吧,我现在手头还没有 1.7 SVN(以及 zsh 的经验),但是对于

    >svn --version
    svn, version 1.8.3 (r1516576)
       compiled Aug 27 2013, 19:43:20 on x86-microsoft-windows
    

    和工作副本,从存储库的根目录

    检出
    Working Copy Root Path: Z:\TS
    ...
    Relative URL: ^/
    

    对于 URL 中的纯 ^ 字符,我得到了相当有趣的结果

    svn ls ^/tags
    svn: E155007: 'Z:\tags' is not a working copy
    

    (注意 svn info 输出中的“工作副本根路径”)

    但是有了小技巧,一切都会好起来的

    svn ls "^/tags"
    1.0.0/
    1.0.1/
    

    我想,^ 在所有的 shell 中都有特殊的含义,你不能在没有保护的情况下使用它

    【讨论】:

    • 非常感谢!这解决了这个问题。我没想到 ZSH 可能是问题所在!
    • 插入符号用于转义 Windows CMD 中的其他 shell 字符,这让我抓狂,因为每次我尝试 svn copy ^/trunk ^/tags/x.y.z 时,它都会认为我在尝试复制 C:\trunk,并且告诉我这不是一棵工作树。
    猜你喜欢
    • 1970-01-01
    • 2013-08-16
    • 1970-01-01
    • 1970-01-01
    • 2020-09-05
    • 1970-01-01
    • 2018-03-19
    • 2020-05-25
    • 2011-01-17
    相关资源
    最近更新 更多