[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: how to svn merge of filename with spaces ?

From: Philip Martin <philip.martin_at_wandisco.com>
Date: Wed, 08 Jul 2015 11:06:53 +0100

Branko Čibej <brane_at_wandisco.com> writes:

> On 07.07.2015 19:58, Zk W wrote:
>> Hi All
>>
>> We have SVN 1.6.
>> We like to perform a svn merge on a file where its filename has spaces.
>> eg
>> Roaming Apple.txt
>>
>> Is this syntax correct below to svn merge to a working copy ?
>> If not, what should it be ?
>>
>> svn merge -c 12345 "https://mytext.abb.com/app/path/to/Roaming
>> Apple.txt" .
>>
>> using quotes?
>>
>>
>> Right now, we get error
>> svn: Unable to parse URL '/svn/app/!svn/bc/12576/path/to/Roaming Apple.txt
>> using
>> svn merge -c 12345 https://mytext.abb.com/app/path/to/Roaming Apple.txt .
>>
>> Any help is appreciated.
>
>
> You have to properly escape spaces (and other special characters) in an
> URL. See, for example,
>
> https://en.wikipedia.org/wiki/Percent-encoding
>
> In your case, the URL would be
>
> https://mytext.abb.com/app/path/to/Roaming%20Apple.txt

It might be a bit more complicated than that.

The command line client has code to auto-escape command line URLs.
svn_client_args_to_target_array() calls svn_opt__arg_canonicalize_url.
The client should automatically convert spaces to %20.

The error message shows an ra_neon (or ra_serf?) error while failing to
parse a bc URL from the server. I think that means the client has
correctly escaped the space and that the error is occurring later. I
suppose manually escaping the space might be sufficient to make it work,
but it is possible that it will not and that a client/server upgrade is
required.

-- 
Philip Martin | Subversion Committer
WANdisco // *Non-Stop Data*
Received on 2015-07-08 12:07:09 CEST

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.