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

Re: short question about merge [PROPOSAL] vs. tree-deltas

From: Tom Lord <lord_at_emf.net>
Date: 2003-04-19 18:20:26 CEST

        me:

>> This message (not from me), points to another use-case that
>> could be easily solved with id cookies:

>> [about students using `cp' and `add' and manual deletion
>> of wc meta-data to move files]
        

        Will:

> Yeah - it could be solved with id-cookies. I'm not sure
> about the 'easily' part. All the id cookies allow is the
> munging of copy history. In the specific case I was
> referring to the students had deleted the meta-data, and so
> it would have had to be manually re-created.

No, it wouldn't _necessarily_ have to be done by hand, and it's impact
on copy history is more interesting than you give it credit for.

Using id cookies for tree merges means that you then have two distinct
ways to look at a noderev within a tree: there's the physical history
of the noderev -- essentially an audit trail of what subversion
commands left the file there; then there's the id cookie --
essentially a separate assertion that this physical noderev counts as
the file having a particular logical role for the sake of tree
comparisons. If the physical history of a noderev winds up confusing
the merge algorithm relative to programmers' intentions, they can
change the id cookie directly.

You wouldn't _necessarily_ have to restore id cookies manually. For
_some_ source and text files, I've found it convenient to embed id
cookies in comments from which the rev ctl system extracts them
automatically. This approach doesn't apply to everything, obviously,
but imo it's awfully convenient when it does. Embedded id cookies and
other ways of including id cookies in the source tree mean that when I
export a tree and include all the id cookies, someone else can import
it, and now we can exchange changesets based on id cookies.

The particular way in which your students are "messing things up" is
extreme -- but I think it illustrates a general rule of thumb that
users can be counted on to use svn commands the first way it occurs to
them to get trees that "look right", or even move files around while
thinking about the impact on some merges but forgetting about other
merges. ID cookies relax the overloading of physical noderev history
as the strict determinant of how tree merging behaves.

-t

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Apr 19 18:09:13 2003

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