> I cloned the fmac-gate which was built on onnv_87. > > $ hg clone ssh://anon at hg.opensolaris.org/hg/fmac/fmac-gate fmac > > Then I pulled onnv_93 into that. > > $ cd fmac > $ hg pull -r onnv_93 -u ssh://anon at hg.opensolaris.org/hg/onnv/onnv-gate > > I get some messages about conflict and use hg head or hg merge. I get this > when I try to merge: > > [duboff at eagle fmac]$ hg merge > abort: untracked file in working directory differs from file in requested > revision: 'usr/src/pkgdefs/SUNWiscsitgtr/depend' > > And I know that this it looks like James McPherson put something back > between 87 and 93 which conflicts with some changes in fmac-gate. > > [duboff at eagle fmac]$ hg head > changeset: 6972:28788c8a03a8 > tag: tip > user: jmcp > date: Mon Jun 23 19:46:32 2008 -0700 > summary: 6640275 ses(7d)'s use of SPC3/4 response data format is > incorrect > > changeset: 6362:46e3138f5eaf > user: John Weeks <john.weeks at sun.com> > date: Wed Jul 16 16:21:30 2008 -0700 > summary: truss missing getprevcon and other fixes > > My question is how to use the tools to list out the diffs of the two > changesets, 6972:28788c8a03a8 and 6362:46e3138f5eaf ???? > > I think if I know the files, I can use hg diff to see/merge myself. How > can I determine the files in conflict so I can do that? The depend file > above just points to the packages, I think. > > In teamware I would accept the parent and merge my changes, when I've had > that happen in the past. I'm trying to understand how I use mercurial in > that same way I guess, and/or how to issolate the conflict with the > information they provide to me.
You generally want to make sure that your .hgrc file is setup to point to a valid, graphical filemerge tool. Then just run "hg merge." Mercurial will automatically include files from both parent changesets, and even automatically merge file changed in both. When it can't do that (because changes overlap), it will start a graphical file merge tool for each such conflicting file. When that completes, your working directory will contain uncommitted changes to represent your merge of the two changesets. You can do "hg status -mard" to find what has changed as a result of the merge, "hg diff" to display diffs for affected files, and finally "hg commit" when you're happy with what you see. If you insist on a more manual approach, you can do "hg status -mard --rev 6362:6972," but I don't think that will really make you happy. --Mark
