svn import 命令的 --message 标志有问题。在某些服务器上它可以工作,但在其他服务器上,如果消息包含空格,即使您用单引号或双引号括住消息字符串,它也会变得混乱,如下所示:
svn import -m 'New stuff added' https://my-remote-repo/SVN/repo/path
当失败时,我收到错误:
svn: Too many arguments to import command
如果我将消息限制为不带空格的消息,则每次都会成功。显然问题在于命令无法识别带引号的字符串,但为什么呢?
它是否成功似乎取决于我使用的特定 OS/Shell 组合。该命令在 SUSE 10.3 上使用 Ksh 版本 M 93s+ 2008-01-31 时有效,但在 RHEL 5.6 上使用 Ksh 版本 AJM 93t+ 2010-02-02 时失败。或者也许这只是一个幌子,真正的问题是环境之间的其他差异?
答案1
您可以在 ksh 中使用以下语法:svn "import -m 'New stuff added' https://my-remote-repo/SVN/repo/path"
答案2
我自己也遇到了这个问题,并偶然发现了这个问题。我没有在这里找到答案,但稍微尝试了一下,并能够让它工作。
我在 svn 导入中写了这样一个星号:
svn import * svn://www.com... -m 'Initial Import'
当我将星号改为圆点时,它便按预期发挥作用。
svn import . svn://www.com... -m 'Initial Import'
就你的情况而言,你似乎没有指定点或星号或任何东西。我敢打赌,这就是它出错的原因。