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

Re: Thoughts and open questions on patch/dump unification

From: Eric S. Raymond <esr_at_thyrsus.com>
Date: 2004-09-16 18:33:37 CEST

C. Michael Pilato <cmpilato@collab.net>:
> Since there is only a single changeset repsented in my concept of an
> "action diff", and it can't even legitimately be called a revision
> (since that exact change may or may not have every been committed --
> at least not as one changeset), then my concept of this "action diff"
> would look just like the *contents* of a single revision chunk from
> the dumpfile format, plus the tweak I mentioned earlier. In other
> words, you'd never even see:
> Revision-number: FOO
> ...
> It would begin directly with:
> Node-path: my/path
> ...
> And since there's no revision info, there's no log message, no date,
> no author -- in other words, there's nothing that can't be applied to
> the working copy.

OK. We are talking about two fundamentally different concepts here.
There is probably a place for both of them in the Subversion universe,
so I'm going to propose terminology to distinguish them.

You get to keep the term "action diff" for your single-changeset creature
with no log text, date, or author. An action diff, alone, can only be
applied to a working copy. Besides change bands in the patch(1) style,
it may include file adds/renames/deletes. (I'm not clear on whether it
makes sense for action diffs to include property operations.)

What I'm talking about, I'll now rename a "history diff". A history
diff may consist of one or more action diffs in sequence, each with
associated log text, author, and date. History diffs apply to
repositories. A dumpfile is a history diff meant to be applied to an
empty repository.

To do the decentralized-development thing, action diffs don't suffice.
We need history diffs. I view the design and implementation of action
diffs as interesting primarily because it's a building block for doing
history diffs.

I think it is quite possible that the only format difference between
action and history diffs might be a "commit" element including log
text, date, author, and other metadata. Each commit point would
encompass all action diffs back to the last commit point. Not
by coincidence, dump files already look like this.

I hope this clarifies matters.

		Eric S. Raymond
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Sep 16 18:34:33 2004

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.