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

Re: Remaining of 'svn:executable' on changing file to link

From: Thomas Sturm <thomas.sturm_at_thalesgroup.com>
Date: 2007-07-03 09:50:35 CEST

Karl Fogel wrote:
> Thomas Sturm <thomas.sturm@thalesgroup.com> writes:
>> if you have a link in subversion and this link has the property
>> 'svn:executable' set, it will be not possible to (freshly) checkout.
>> See <http://subversion.tigris.org/issues/show_bug.cgi?id=2344>
>>
>> But if you replace an executable file with a link of the same name,
>> the property 'svn:executable' will remain.
>>
>> Following setting:
>>
>> % touch com.sh
>> % chmod +x com.sh
>> % svn add com.sh
>> % svn ci
>>
>> Property 'svn:executable' is set.
>> Now change the file to a link:
>>
>> % svn del com.sh
>> % ln -s ../bin/com.sh .
>> % svn add com.sh
>> % svn ci
>>
>> Now 'com.sh' was replaced and has property 'svn:special' AND
>> 'svn:executable' although it was deleted and added.
>>
>> Why is the 'svn:executable' property not deleted, when the file
>> was deleted and a link with the same name was added?
>
> Is ../bin/com.sh an executable file? (There may still be a bug in
> Subversion here, I'm just trying to figure out exactly what kind of
> bug. If you could test with an executable and non-executable link
> target and let us know the result, that would be great.)
>
> -Karl

The 'com.sh' is/was executable. I have checked it with a non-exeutable
data file: no probhlem.

-----------------------------------------------------------------------

% # create two 'normal' files:
% svn co file://`pwd`/repos/code
Checked out revision 1.
% cd code
% ls
% touch com.sh
% chmod +x com.sh
% touch data.txt
% svn st
? com.sh
? data.txt
% svn add *
A com.sh
A data.txt
% svn ci -m 'first input.'
Adding com.sh
Adding data.txt
Transmitting file data ..
Committed revision 2.
% svn proplist com.sh
Properties on 'com.sh':
   svn:executable
   svn:eol-style
% svn proplist data.txt
Properties on 'data.txt':
   svn:eol-style
% # all ok: one exutable file and one non-executable file
-----------------------------------------------------------------------
% # replace the normal files with links:
% svn del com.sh
D com.sh
% svn del data.txt
D data.txt
% mkdir ../bin
% touch ../bin/com.sh
% chmod +x ../bin/com.sh
% touch ../bin/data.txt
% ls -l ../bin
total 0
-rwxr-xr-x 1 sturm staff 0 2007-07-03 09:30 com.sh
-rw-r--r-- 1 sturm staff 0 2007-07-03 09:30 data.txt
% ln -s ../bin/* .
% ls -l
total 2
lrwxrwxrwx 1 sturm staff 13 2007-07-03 09:30 com.sh -> ../bin/com.sh
lrwxrwxrwx 1 sturm staff 15 2007-07-03 09:30 data.txt -> ../bin/data.txt
% svn add *
A com.sh
A data.txt
% svn ci -m 'ci of links.'
Replacing com.sh
Replacing data.txt
svn Transmitting file data ..
Committed revision 3.
% svn proplist *
Properties on 'com.sh':
   svn:special
   svn:executable
   svn:eol-style
Properties on 'data.txt':
   svn:special
   svn:eol-style
% # the link to 'com.sh' has the 'svn:exutable' flag (error)
% # the link to 'data.txt' has no 'svn:exutable' flag (ok)
-----------------------------------------------------------------------

This gives problems on checkout to a fresh working copy:
Subversion tries to modify the link and fails:

-----------------------------------------------------------------------
% cd /tmp
% svn co file:///home/sturm/exec-flag/repos/code
A code/com.sh
A code/data.txt
svn: In directory 'code'
svn: Can't change perms of file 'code/com.sh': No such file or directory
----------------------------------------------------------------------

-- 
Thomas Sturm
Thales Rail Signalling Soulutions GmbH
Colditzstrasse 34-36                             ALCA-Tel.   2520 3714
D 12099 Berlin, Germany                          Tel. +49 30 7002 3714
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Tue Jul 3 09:50:38 2007

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.