Please take our Survey
logo       

Choosing A Webhost:
A web hosting service is a type of Internet hosting service that allows individuals and organizations to provide their own website accessible via the World Wide Web. Web hosts are companies that provide space on a server they own for use by their clients as well as providing Internet connectivity, typically in a data center. Web hosts can also provide data center space and connectivity to the Internet for servers they do not own to be located in their data center, called colocation. more...

Re: precise codeville-merge reference now available: msg#00009

version-control.revctrl

Subject: Re: precise codeville-merge reference now available

Some issues turned up after the reference code release last night. Nothing
major, thankfully. They all center around the cases where a line either
appears in both of the ancestors but not in the clean merge, or doesn't
appear in either ancestor but does appear in the clean merge.

First of all, I had some broken code trying to hack around the problem I'm
about to explain. It proved to be broken (sort of, bear with me). I fixed
that and silently updated the code at the url I pointed to. That was an
easy fix.

Second, there's some broken behavior with conflict cases. Actually,
scratch that, conflict UI is broken in *all* systems out there, and I'm
just grumbling about it because the problem is made quite glaring by
running through some examples using precise merge. Basically you can have
a case where a line is not present in both ancestors but should be present
in the descendant, or isn't present in both ancestors and should be
present in the descendant, and in those cases *both* sides of a conflict
will have it wrong.

The simplest example of this is where version A adds a line, then version
B deletes it, concurrently version X adds the same line, and version Y
deletes it. Merging A and X will result in the line being added, likewise
with B and Y, but merging the result of those two merges will result in
the line being deleted.

Since this is a problem which has been present in all version control
systems to date, and nobody's really complained about it, I don't think
it's urgent to fix it. Probably the best approach is to make a more
verbose UI which actually explains these cases.

A related problem to the above one is that those weird agreeing with
neither parent cases can cause a two lines to border each other in a
descendant which have never bordered each other in any ancestor. In fact
it's possible to construct a case of two lines both of which must appear
in the descendant but not in either ancestor where their ordering must be
determined based on the arbitrarily chosen weave ordering.

The fix for this is to treat a descendant which differs from both
ancestors as a unitary conflict case, and mark it as such in the UI. I
haven't written the code for this yet, but it won't be very difficult.

Other than those cases it seems good so far. I've even got a good idea
about how to do dynamic line ordering, so the pie in the sky feature list
may get done far sooner than expected.

-Bram


<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

Recently Viewed:
hardware.arm.at...    cms.citadel.dev...    video.gstreamer...    java.facelets.u...    misc.basics.qna...    web.wiki.instik...    network.uip.use...    xdg.devel/2003-...    tex.bibtex.bibd...    finance.quotesp...    ietf.zeroconf/2...    redhat.blinux.g...    suse.db2/2003-0...    php.phpesp/2004...    uml.devel/2003-...    gnome.labyrinth...    qnx.openqnx.dev...    boot-loaders.gr...    db.dataperfect....    audio.audacity....    linux.uclinux.m...    editors.j.devel...    os.openbsd.tech...    kde.users.multi...   
Home | advertise | OSDir is an inevitable website. super tiny logo

Free Magazines

Cisco News
Receive a free quarterly e-newsletter with exclusive articles on how Cisco IT uses its own products and solutions to enable the business.
subscribe

Systems Management News, the newspaper for IT systems administration and data center managers! Each issue of Systems Management News is chock-full of news and analysis to help you understand what's happening in your field.
subscribe

The Enterprise Newsweekly eWeek is the essential technology information source for builders of e-business.
subscribe

Oracle Magazine Oracle Magazine contains technology strategy articles, sample code, tips, Oracle and partner news, how to articles for developers and DBAs, and more. Oracle (NASDAQ: ORCL) is the world's largest enterprise software company.
subscribe

Total Telecom Total Telecom is "The Economist of the communications industry".
subscribe

Navigation