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

RE: svn cross-repo copy loses svn:executable *and* leaves the working dir inconsistent

From: Bert Huijben <bert_at_qqmail.nl>
Date: Wed, 17 Aug 2011 02:03:01 +0200

> -----Original Message-----
> From: Daniel Shahaf [mailto:d.s_at_daniel.shahaf.name]
> Sent: woensdag 17 augustus 2011 0:22
> To: Mark Eichin
> Cc: dev_at_subversion.apache.org
> Subject: Re: svn cross-repo copy loses svn:executable *and* leaves the
> working dir inconsistent
>
> I can reproduce this with trunk.
>
> Mark Eichin wrote on Tue, Aug 16, 2011 at 17:54:57 -0400:
> > Ran across this while writing a "populate new repo" script, that used
> > svn cp to copy a set of svn-hooks in place (by definition from one
> > repo to another.) What happens is that when a file in the source repo
> > (called "foreign" here) has svn:executable set, the working dir in the
> > destination (called "local" here) looks right - ls -l shows the +x
> > bits, svn proplist -v shows the property, even .svn/props-base
> > mentions it. The commit, on the other hand, doesn't push it to the
> > repository. This means that the local checkout is now a "persistent
> > lie" (in that trying to set it there and commit it does nothing,
> > because it's "already" set.)
>
> So, it's definitely a bug *somewhere*.

.svn/props-base shouldn't have any properties on a cross-repo copy/merge.

And that there are pristine properties for a local addition also explains
why the property changes aren't pushed on commit: the working copy doesn't
see them as changes.

> > svn co $LOCAL_REPO/branch $PERFORM_COPY_WORKDIR/branch
> > svn copy $FOREIGN_REPO/trunk/program
> $PERFORM_COPY_WORKDIR/branch/copied-program
>
> Is this documented to work?

        Bert
Received on 2011-08-17 02:03:34 CEST

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