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

Re: FS copy model

From: Greg Stein <gstein_at_lyra.org>
Date: 2001-01-03 11:59:48 CET

On Tue, Jan 02, 2001 at 08:46:43PM -0800, Greg Stein wrote:
>...
> I think another way to phrase the question is:
>
> Do we record a copy from one location to another in the FS? If so, then
> how is it recorded? Is there a machine-readable marker? (the checkin
> comment is not machine-readable)

To answer my own question, and state my desired outcome:

*) when a copy is made, we create a new branch (e.g. create 73.4.1.1)

*) the branch is assigned two new properties: the path and revision where
   the copy came from.

   [ note that we already know it was derived from 73.4; we just don't know
     what path/rev that corresponded to ]

*) allow further text/prop deltas to be applied

Thus: 73.4.1.1 differs from 73.4 by: two new props, possibly other prop
deltas, possibly a text delta. These further changes allow us to "svn copy"
on the client, edit the result, then commit.

Note that a copy is still O(1) because we do the branching only on the top
node of the copy, not a whole tree.

Potential funky feature: the two props that are assigned to 73.4.1.1 would
be carried into 73.4.1.2 unless something deleted them in that delta. To
avoid this, the copy information could be stored as something other than a
property (e.g. an intrinsic part of the node branch mechanism).

I think this behavior would be good since it means we retain information
about the copy that occurred. Without it, new nodes just "appear" but we
lose the info about where they came from.

Thoughts?

Cheers,
-g

-- 
Greg Stein, http://www.lyra.org/
Received on Sat Oct 21 14:36:19 2006

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.