It's become clear that there is both more complexity, and more
opportunity for code factorization, involved in "svn merge" than we
originally thought. So after talking with Greg Stein and Mike Pilato,
what we'd like to do is divide the implementation of "svn merge" into
two stages:
Stage 1:
Study Philip Martin's "svn diff" implementation, study our
current "svn update" implementation, and attempt to refactor in
a way that makes those two share code with each other, while
providing the functionality "svn merge" will need. Obviously,
in doing the refactoring we may discover that we need 1, 2, 3,
or N editors to do it right, so I'm not going to try to predict
how that's going to turn out -- only that by Feb. 11th, we'll
know the answer and it will be done.
"svn update" and "svn diff" should behave the same after this
refactorization as before; only under the hood will one be able
to tell that things are being done differently.
Stage 2:
Implement "svn merge", using the foundation built in Stage 1.
Stage 1 is part of Milestone 9, but Stage 2 is not -- we'll put that
into the next one, so as not to cram in too much at once.
By the way, much thanks to everyone who's been participating in the
discussions about "svn switch" and "svn merge". It's really helping
find edge cases, and clarify interface and implementation issues.
Subversion is going to be much better for it. Greg Hudson should get
a special mention, for originally pointing out that the topic hadn't
yet been brought up here, and that it needed to be -- I will make sure
it stays visible, by reporting on the progress of Stage 1 as I go.
In Chinese, the expression "Old Hundred Names" is used to refer to the
populace as a whole. I hereby dub this list "Old Hundred Eyes". :-)
-K
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Oct 21 14:36:59 2006