Windows

时间:2018-03-01 16:56:28

标签: windows svn command-line cmd

我在颠覆中遇到了问题。我编写了一个python脚本,它对subversion进行命令行调用,从日志中返回xml数据,以便进一步处理。这是运行的命令:

svn log --xml -r {2018-01-11:2018-03-01} http://my/subverion/repository/

这在Linux和Mac上运行得很好。但是,在Windows上,我得到:

svn: E205000: Syntax error in revision argument '2018-01-11:2018-03-01'

我尝试了各种引用,转义,变化花括号的组合。以下是我尝试过的一些变化

svn log --xml -r "{2018-01-11:2018-03-01}" http://my/subverion/repository/
svn log --xml -r {"2018-01-11":"2018-03-01"} http://my/subverion/repository/
svn log --xml -r {20180111:20180301} http://my/subverion/repository/
svn log --xml -r {2018-01-11}:{2018-03-01} http://my/subverion/repository/

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

(这是对你的评论回复:)

那是......奇怪......你回来的错误看起来像是因为某种原因你的花括号被剥离了。您使用的是Powershell还是类似的东西?

编辑:灯泡突然出现在我脑海中。刚刚意识到你说你正在使用python。当你在python中使用字符串时,你需要逃避花括号。为了逃避它们,您需要将{{}}

加倍

尝试此命令:

"svn log --xml -r {{2018-01-11}}:{{2018-03-01}} http://my/subverion/repository/"

如果你想在其他命令行界面(例如powershell)中包含maxmium可移植性,可以用引号括起来:

"svn log --xml -r \"{{2018-01-11}}:{2018-03-01}\" http://my/subverion/repository/"

强调整个日期范围内的"和每个日期周围的花括号。