[CentOS] unable to check in code to svn when files contain spaces or characters

Mon Jan 24 13:42:08 UTC 2011
Les Mikesell <lesmikesell at gmail.com>

On 1/24/11 5:57 AM, Agnello George wrote:
> i got a file like this and i need add it into my svn
> admin/upload_data/FINAL  leg  list  19_01_2010 to  agar  (Merged data in one).xls
> i as able to add other files with space using the following command :
>   svn st |grep ? |cut -c8- |sed 's/ /\\ /g' |xargs svn add
> however there are some special characters like ( ) +#@  that svn cannot
> understand as the full path of  the file .
> can some one help me in this in perl or in shell .

What you need to know is too long to describe here, but first you need to find a 
list of shell metacharacters and how to quote them on the command line. Short 
version is that a \ quotes the next character single quotes quote everything 
except another single quote literally, double quotes cover most things but allow 
$variable expansion.

Then you need to look at what subversion itself requires after you get the 
literal value past the shell parser.  I thought it was just that @ was 
interpreted as file at revision peg revision unless you append another @ to the end 
but there could be more restrictions.   All of that is simple enough to work 
around - but probably not worth it compared to using sensible names.  However 
the thing that is going to kill you is that files that differ only in case of 
one or more letters are different files on linux - and in a linux svn repository 
- but not on windows (where such things are most likely being created).  Enforce 
some rules before that happens.

   Les Mikesell
    lesmikesell at gmail.com