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

Re: AW: merging executable binaries

From: Tyler Colgan <tyler.colgan_at_gmail.com>
Date: Thu, 8 Jul 2010 13:08:49 -0400

The short explanation for the wrong rev number is that you have to add
840074 to it first. The long explanation can be found at
http://svn.apache.org/repos/asf/subversion/README.

Issue 3475 appears to have been for "svn patch" rather than "svn
merge", but it's more or less the same problem. It looks like this is
the diff that fixed the issue for svn patch:
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_client/patch.c?r1=879495&r2=879496&pathrev=879496
Something similar would probably fix the problem for svn merge as well.

Tyler

On Thu, Jul 8, 2010 at 8:21 AM, Matthias Weyh <m.weyh_at_technisat.de> wrote:
> It seems that there is already a report present at
> http://subversion.tigris.org/issues/show_bug.cgi?id=3475 for this issue.
> The revision for the fix however seems to not match the revision on
> http://svn.apache.org/repos/asf/.
>
> Can you tell me how to find out what was changed and if the patch is
> already included in one of the later subversion releases?
>
> Thanks,
> Matthias
>
> -----Ursprüngliche Nachricht-----
> Von: Daniel Shahaf [mailto:d.s_at_daniel.shahaf.name]
> Gesendet: Donnerstag, 8. Juli 2010 10:33
> An: Matthias Weyh
> Cc: users_at_subversion.apache.org
> Betreff: Re: AW: merging executable binaries
>
> Matthias Weyh wrote on Wed, 7 Jul 2010 at 09:15 -0000:
>> Hello,
>>
>> I have added a command list for reproducing the issue.
>>
>
> Thank you.  It's much easier to understand the situation now.
>
>> Please note the last commit message. At this point the executable flag
>> is missing. It is however recovered on the commit.
>>
>
> I've read the transcript and I agree it's a bug.
>
> Please go ahead and file a bug report at
> http://subversion.tigris.org/issues/,
> so that we don't forget about it.  If you'd like to dive in and help fix
> it,
> that's more than okay :-)
>
>> best regards,
>> Matthias
>>
>
> Daniel
>
>>
>> $ svnadmin create /a/svnserver
>>
>> $ svn checkout file:///a/svnserver /a/wc
>> Checked out revision 0.
>>
>> $ cd /a/wc
>>
>> $ mkdir trunk
>>
>> $ mkdir branches
>>
>> $ mkdir tags
>>
>> $ svn add trunk tags branches
>> A         trunk
>> A         tags
>> A         branches
>>
>> $ svn commit -m "initial structure"
>> Adding         branches
>> Adding         tags
>> Adding         trunk
>>
>> Committed revision 1.
>>
>> $ svn switch file:///a/svnserver/trunk
>> D    trunk
>> D    branches
>> D    tags
>> Updated to revision 1.
>>
>> $ dd if=/dev/urandom of=executable.bin bs=1k count=1
>> 1+0 records in
>> 1+0 records out
>> 1024 bytes (1.0 kB) copied, 0.000298366 s, 3.4 MB/s
>>
>> $ ls -la
>> total 16
>> drwxr-xr-x  3 devtsd devtsd 4096 2010-07-07 07:58 .
>> drwxr-xr-x 12 devtsd devtsd 4096 2010-07-07 07:56 ..
>> -rw-r--r--  1 devtsd devtsd 1024 2010-07-07 07:58 executable.bin
>> drwxr-xr-x  6 devtsd devtsd 4096 2010-07-07 07:57 .svn
>>
>> $ svn propset svn:executable ON executable.bin
>> property 'svn:executable' set on 'executable.bin'
>>
>> $ ls -la
>> total 16
>> drwxr-xr-x  3 devtsd devtsd 4096 2010-07-07 07:58 .
>> drwxr-xr-x 12 devtsd devtsd 4096 2010-07-07 07:56 ..
>> -rwxr-xr-x  1 devtsd devtsd 1024 2010-07-07 07:58 executable.bin
>> drwxr-xr-x  6 devtsd devtsd 4096 2010-07-07 08:02 .svn
>>
>> $ svn commit -m "executable added"
>> Adding  (bin)  executable.bin
>> Transmitting file data .
>> Committed revision 2.
>>
>> $ svn copy file:///a/svnserver/trunk file:///a/svnserver/branches/b1 -
>> "created branch b1"
>>
>> Committed revision 3.
>>
>> $ dd if=/dev/urandom of=executable.bin bs=1k count=1
>> 1+0 records in
>> 1+0 records out
>> 1024 bytes (1.0 kB) copied, 0.000177119 s, 5.8 MB/s
>>
>> $ ls -la
>> total 16
>> drwxr-xr-x  3 devtsd devtsd 4096 2010-07-07 08:04 .
>> drwxr-xr-x 12 devtsd devtsd 4096 2010-07-07 07:56 ..
>> -rwxr-xr-x  1 devtsd devtsd 1024 2010-07-07 08:04 executable.bin
>> drwxr-xr-x  6 devtsd devtsd 4096 2010-07-07 08:02 .svn
>>
>> $ svn commit -m "executable modified"
>> Sending        executable.bin
>> Transmitting file data .
>> Committed revision 4.
>>
>> $ svn switch file:///a/svnserver/branches/b1
>> U    executable.bin
>> Updated to revision 4.
>>
>> $ ls -la
>> total 16
>> drwxr-xr-x  3 devtsd devtsd 4096 2010-07-07 08:06 .
>> drwxr-xr-x 12 devtsd devtsd 4096 2010-07-07 07:56 ..
>> -rwxr-xr-x  1 devtsd devtsd 1024 2010-07-07 08:06 executable.bin
>> drwxr-xr-x  6 devtsd devtsd 4096 2010-07-07 08:06 .svn
>>
>> $ svn merge file:///a/svnserver/trunk -r 3:4
>> --- Merging r4 into '.':
>> U    executable.bin
>>
>> $ ls -la
>> total 16
>> drwxr-xr-x  3 devtsd devtsd 4096 2010-07-07 08:07 .
>> drwxr-xr-x 12 devtsd devtsd 4096 2010-07-07 07:56 ..
>> -rw-r--r--  1 devtsd devtsd 1024 2010-07-07 08:07 executable.bin
>> drwxr-xr-x  6 devtsd devtsd 4096 2010-07-07 08:07 .svn
>>
>> $ svn commit -m "executable now has no execute flag which it should
> but
>> this will change with the commit"
>> Sending        .
>> Sending        executable.bin
>> Transmitting file data .
>> Committed revision 5.
>>
>> $ ls -la
>> total 16
>> drwxr-xr-x  3 devtsd devtsd 4096 2010-07-07 08:07 .
>> drwxr-xr-x 12 devtsd devtsd 4096 2010-07-07 07:56 ..
>> -rwxr-xr-x  1 devtsd devtsd 1024 2010-07-07 08:07 executable.bin
>> drwxr-xr-x  6 devtsd devtsd 4096 2010-07-07 08:07 .svn
>>
>>
>> -----Ursprüngliche Nachricht-----
>> Von: Daniel Shahaf [mailto:d.s_at_daniel.shahaf.name]
>> Gesendet: Dienstag, 6. Juli 2010 20:35
>> An: Matthias Weyh
>> Cc: users_at_subversion.apache.org
>> Betreff: Re: merging executable binaries
>>
>> It's not clear to me exactly what you did.  (The most unambiguous way
> to
>> explain yourself is to post a list of commands, starting from
> 'svnadmin
>> create'.)  However, if you run 'svn merge' and at the end of the
>> operation a file has svn:executable set, then its +x permission should
>> be set --- and if not, that's a bug.
>>
>> Matthias Weyh wrote on Mon, 5 Jul 2010 at 15:54 -0000:
>> > Hello,
>> >
>> > I have seen the following behaviour.
>> >
>> > added binary file to SVN with property svn:executable
>> > executable bits are then set on the file
>> > checked in the file
>> > added a branch which included the file
>> > modified the file in TRUNK
>> > merged the change to branch
>> > the executable flag on the file is then gone
>> > however when I commit the merge the executable flag of the file is
>> again
>> > being set
>> >
>> > Is this the correct behaviour (is the executable flag supposed to be
>> > missing after a merge - and then added when the file is actually
>> > committed)?
>> >
>> > The behaviour is different for non binary executables (the
> executable
>> > bits are always set in this case).
>> >
>> > The SVN version I used was 1.6.6 on Ubuntu 10.0.4. The filesystem on
>> > which the working copy resides is EXT4.
>> >
>> > I hope someone can clear this up for me.
>> >
>> > Thanks,
>> > Matthias
>> >
>> >
>> >
>>
>>
>>
>
>
Received on 2010-07-08 19:09:28 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.