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

Re: svn commit: r1339892 -

From: Greg Stein <gstein_at_gmail.com>
Date: Fri, 18 May 2012 02:06:32 -0400

On Fri, May 18, 2012 at 1:57 AM, Greg Stein <gstein_at_gmail.com> wrote:
> On Fri, May 18, 2012 at 1:34 AM, Bert Huijben <bert_at_vmoo.com> wrote:
>>
>> Editor v1 only requires the revision for base node replacements and I
>> don't see why we need to change that for v2.
>>
>> If we copied a subtree from a revision we know that that revision
>> didn't change. How could it be out of date?
>
> The FS does not remember where changes came from, without some deep
> inspection. If we see "/some/path", then we don't know how it got
> there. Whether it started there, or whether it was copied there.
>
> Now... that said, I just realized that passing the parent revision
> will not work, because the path will not be found in that target
> revision.
>
> So, yeah: we need to somehow enable passing SVN_INVALID_REVNUM for the
> children of copies. That is equivalent to the Ev1 behavior: "I'm
> replacing an uncommitted item". It looks like we can use
> svn_fs_closest_copy() to determine if a txn node (or an ancestor) has
> been copied to that target location.

Some more thinking...

But we do need some sort of check in here. We should not allow add_*()
to overwrite a copied-child. But a copy() can do so IFF it is part of
a mixed-rev copy. But what about a secondary copy operation over a
child?

At some point, we just assume the client is working properly. Maybe we
just omit all OOD checks under copies. But that doesn't really manager
improper overwrites...

Hrm...
Received on 2012-05-18 08:07:08 CEST

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