[CentOS] unable to check in code to svn when files contain spaces or characters
Les Mikesell
lesmikesell at gmail.com
Mon Jan 24 13:42:08 UTC 2011
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
More information about the CentOS
mailing list