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#00010

version-control.revctrl

Subject: Re: precise codeville-merge reference now available


Bram:

Congratulations on your progress on theory and implementation of precise
Codeville merge.

You wrote:

> Second, there's some broken behavior with conflict cases. Actually,
> scratch that, conflict UI is broken in *all* systems out there,
...
> 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.

I didn't understand this issue, so I tried to reproduce it in darcs, but
I couldn't cause anything obviously bad to happen. I think that the reason
I can't reproduce this problem is that darcs cannot "merge B and Y" without
bringing in A (which B depends on) and X (which Y depends on).

Here is a bash transcript of my attempt (edited to remove my typing goofs).

Regards,

Zooko

MAIN yumyum:~$ mkdir darcstest
MAIN yumyum:~$ cd darcstest/
MAIN yumyum:~/darcstest$ mkdir r1
MAIN yumyum:~/darcstest$ cd r1
MAIN yumyum:~/darcstest/r1$ darcs init
MAIN yumyum:~/darcstest/r1$ cat > foofile
I am a happy file.
I like to eat ice cream and frogs.
Yummy yummy frogs.
MAIN yumyum:~/darcstest/r1$ darcs add foofile
MAIN yumyum:~/darcstest/r1$ darcs record --all --author="r1author" -m"init
version of foofile"
Finished recording patch 'init version of foofile'
MAIN yumyum:~/darcstest/r1$ cat >> foofile
Actually, frogs are kind of yucky.
MAIN yumyum:~/darcstest/r1$ darcs record --all --author="r1author" -m"add line
clarifying the statement about frogs"
Finished recording patch 'add line clarifying the statement about frogs'
MAIN yumyum:~/darcstest/r1$ cd ..
MAIN yumyum:~/darcstest$ mkdir r2
MAIN yumyum:~/darcstest$ cd r2/
MAIN yumyum:~/darcstest/r2$ darcs init
MAIN yumyum:~/darcstest/r2$ darcs pull -p'init' ../r1

Wed Jun 15 13:10:01 ADT 2005 r1author
* init version of foofile
Shall I pull this patch? (1/1) [ynWvpxqadjk], or ? for help: y

Finished pulling and applying.
MAIN yumyum:~/darcstest/r2$ cat >> foofile
Actually, frogs are kind of yucky.
MAIN yumyum:~/darcstest/r2$ darcs record --all --author="r2author" -m"frogs?
That's disgusting."
Finished recording patch 'frogs? That's disgusting.'
MAIN yumyum:~/darcstest/r2$ cd ..
MAIN yumyum:~/darcstest$ cd r1
MAIN yumyum:~/darcstest/r1$ cat foofile
I am a happy file.
I like to eat ice cream and frogs.
Yummy yummy frogs.
Actually, frogs are kind of yucky.
MAIN yumyum:~/darcstest/r1$ head -3 foofile > tmp ; mv tmp foofile
MAIN yumyum:~/darcstest/r1$ darcs whatsnew
{
hunk ./foofile 4
-Actually, frogs are kind of yucky.
}
MAIN yumyum:~/darcstest/r1$ darcs record --all --author="r1author" -m"Remove
mistaken retraction of declaration of love for tasty frogs."
Finished recording patch 'Remove mistaken retraction of declaration of love for
tasty frogs.'
MAIN yumyum:~/darcstest/r1$ cd ../r2/
MAIN yumyum:~/darcstest/r2$ head -3 foofile > tmp ; mv tmp foofile
MAIN yumyum:~/darcstest/r2$ darcs record --all --author="r2author" -m"Fine.
I'm not going to make a big deal out of this."
Finished recording patch 'Fine. I'm not going to make a big deal out of this.'
MAIN yumyum:~/darcstest/r2$ cd ..
MAIN yumyum:~/darcstest$ mkdir mergetwoadds
MAIN yumyum:~/darcstest$ cd mergetwoadds/
MAIN yumyum:~/darcstest/mergetwoadds$ darcs init
MAIN yumyum:~/darcstest/mergetwoadds$ darcs pull ../r1

Wed Jun 15 13:10:43 ADT 2005 r1author
* add line clarifying the statement about frogs
Shall I pull this patch? (1/2) [ynWvpxqadjk], or ? for help: y

Wed Jun 15 13:13:19 ADT 2005 r1author
* Remove mistaken retraction of declaration of love for tasty frogs.
Shall I pull this patch? (2/2) [ynWvpxqadjk], or ? for help: d
Finished pulling and applying.
MAIN yumyum:~/darcstest/mergetwoadds$ darcs pull ../r2

Wed Jun 15 13:12:14 ADT 2005 r2author
* frogs? That's disgusting.
Shall I pull this patch? (1/2) [ynWvpxqadjk], or ? for help: y

Wed Jun 15 13:13:38 ADT 2005 r2author
* Fine. I'm not going to make a big deal out of this.
Shall I pull this patch? (2/2) [ynWvpxqadjk], or ? for help: d
We have conflicts in the following files:
./foofile
Finished pulling and applying.
MAIN yumyum:~/darcstest/mergetwoadds$ darcs whatsnew
{
hunk ./foofile 4
+v v v v v v v
+Actually, frogs are kind of yucky.
+^ ^ ^ ^ ^ ^ ^
}
MAIN yumyum:~/darcstest/mergetwoadds$ vi foofile # Here I use vi to remove the
"v v v v..." and "^ ^ ^ ^..." conflict marker lines
MAIN yumyum:~/darcstest/mergetwoadds$ darcs record
--author="mergetwoaddsauthor" --all -m"Merge identical added lines."
Finished recording patch 'Merge identical added lines.'
MAIN yumyum:~/darcstest/mergetwoadds$ cd ..
MAIN yumyum:~/darcstest$ mkdir mergetwosubtracts
MAIN yumyum:~/darcstest$ cd mergetwosubtracts/
MAIN yumyum:~/darcstest/mergetwosubtracts$ darcs pull -a ../r1
Pulling from "../r1"...
Finished pulling and applying.
MAIN yumyum:~/darcstest/mergetwosubtracts$ darcs pull -a ../r2
Finished pulling and applying.
MAIN yumyum:~/darcstest/mergetwosubtracts$ darcs whatsnew
No changes!
MAIN yumyum:~/darcstest/mergetwosubtracts$ # whoa. I thought that the merge of
two subtracts would be a null conflict, not a no-changes.
MAIN yumyum:~/darcstest/mergetwosubtracts$ cd ..
MAIN yumyum:~/darcstest$ mkdir mergemergedaddswithmergedsubtracts
MAIN yumyum:~/darcstest$ cd mergemergedaddswithmergedsubtracts/
MAIN yumyum:~/darcstest/mergemergedaddswithmergedsubtracts$ darcs init
MAIN yumyum:~/darcstest/mergemergedaddswithmergedsubtracts$ darcs pull -a
../mergetwoadds/
Finished pulling and applying.
MAIN yumyum:~/darcstest/mergemergedaddswithmergedsubtracts$ darcs pull -a
../mergetwosubtracts/
Finished pulling and applying.
MAIN yumyum:~/darcstest/mergemergedaddswithmergedsubtracts$ darcs whatsnew
No changes!
MAIN yumyum:~/darcstest/mergemergedaddswithmergedsubtracts$ cat foofile
I am a happy file.
I like to eat ice cream and frogs.
Yummy yummy frogs.
MAIN yumyum:~/darcstest/mergemergedaddswithmergedsubtracts$


<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