You can try to auto-merge non-conflicting parts of the file
![]()
Could someone explain what this message means?
"The file is in conflict and needs to be resolved. You can try to auto-merge non-conflicting parts of the file or you can edit manually then save" To be exact, i am puzzled by what "is in conflict" actually means. I consider a file to be in conflict when automatic merge can not be done, since the same lines are modified by two users at the moment. If the source control can merge automatically, then it should do it straight away. however, the message confuses me. Does it mean that RTC can not automatically merge? |
8 answers
![]()
Hi:
RTC Source Control Eclipse doesn't automatically auto-resolve your conflicts after you accept conflicting changes. It lets you decide when you want to deal with conflicts - e.g. maybe you want to suspend your outgoing changes instead. You can select the conflict in the pending changes view and 'auto-resolve'. However, most developers like to double click on that conflict to see it in the Eclipse compare editor. This allows them to decide if the changes should be auto-resolved or if things are more complicated (because the changes are semantically incompatible for example, not just because they are on the same lines). Usually you'll feel good about the changes and can just 'auto-resolve'. In some cases you'll use the compare editor to decide which changes to keep from your version and the other version. Or just plainly resolve with mine or with other if only one version makes sense. Or... suspend your change if it no longer makes sense after that change you accepted. HTH Christophe Cornu RTC Source Control Client |
![]()
To suspend my outgoing changes and to suspend merging my code with incoming code are two separate things. The longer you wait to merge your code with incoming changes, the more chance that the codes will drift in an uncompatible way, so merge early and often does prevent this to some extent.
You can do that also after merging, that is, view the changes that were done. However, the more we postpone merging, the more likely it will be more to merge.
Why not let the computer do the easy stuff, and let humans do only the hard stuff. My point is that i do not want to proof-check what computer is doing, i want to trust computer 100%. So if version control system can merge code, why do i need to double-check it's results? let it carry on, do the easy stuff, and if the computer fails to merge safely, then only then warn me about it.
My biggest point which i want to stress (and i might be wrong! i am also human), is that such feature, i.e. not merging automatically makes me feel that the source control system is not bullet proof. Source control systems should be bullet proof, they should not allow loose my own source code, and do as much things as possible without human interference. Personally, when i saw this "auto-resolve" button, my internal response was "Oh, it must be some conflict, which source control could not resolve". So then i spent five or so minutes searching where are those conflicting changes, and of course i did not find anything. Then it happened again, and then 5 times again. Then my response was "Wtf, it can not do such simple merge manually!". And this lead me thinking that this tool is not bullet-proof, and maybe it simply can not do correctly auto-merging. git, mercurial does that automatically, they even do it much much better than subversion, and i feel very comfortable, since i NEVER have to worry about my code being lost. Please tell me that i can trust "auto-resolve" button, and that i should simply press it whenever i see it without worrying that i will loose my valuable code. |
![]()
Geoffrey Clemm (30.1k●3●30●35)
| answered Dec 29 '10, 11:53 p.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
I always select auto-resolve, and only bring files up in the compare
editor if auto-resolve detects a conflict that cannot be automatically merged. It certainly would be more convenient for me if this were automated (I often hit auto-resolve more than once, just in case I forgot to hit it the first time). I've submitted work item 148609, requesting that there be an "auto-auto-resolve" preference. Please feel free to add a comment indicating your interest/support. Just one caveat. RTC will automatically checkin the results of the auto-resolve into any change set that you currently have open against the merged files. I've submitted work item 148610 requesting that RTC not checkin the results of the auto-resolve, unless the user has turned on the "auto-checkin" preference (as above, please feel free to add a comment to 148610, to indicate your interest/support). As a workaround, I try to remember to complete any change sets for any files with merge conflicts, so that the auto-resolve will be forced to create a new change set for the results of the auto-resolve. Cheers, Geoff On 12/29/2010 6:38 AM, dariusdamalakas wrote: chrisxwrote: |
![]() I always select auto-resolve, and only bring files up in the compare Good to hear that i am not the only one who spotted this. Now i have also found one more bug, or maybe feature. Depends how jazz.net managers will decide to wrap it. Here's a screenshot: http://picasaweb.google.com/lh/photo/TzV2Jdfyenk_TQs83GraNv1qABSDJD3Z-B775z1CkrQ?feat=directlink Basically what the screenshot illustrates is this: i have added a line "import services.common.services.TopicThread;" and the other developer has also added this same line. And when i press "Auto-merge" button, it fails with message "This file contains one or more conflicts that cannot be merged automatically". I would like to know whether this issue will be fixed and when. |
![]()
Thanks for the screenshot, Darius.
> I would like to know whether this issue will be fixed and when We can investigate if a newer version of the Eclipse compare editor treats that kind of pseudo conflict differently. I'm also wondering if there's an extra trailing space that is confusing it on the proposed state. We will post the information to work item 148609. Right now, as you're certainly very well aware, you would use the compare editor to cherry pick the changes, you want to bring in into your own version of the file - e.g. all the non conflicting ones. When you are satisfied, "resolve as merged". When you hit further confusing conflict situations, you can always open a work item against Rational Team Concert / Source Control, with screenshots. We always like to hear about real situations. Christophe Cornu RTC Source Control Client |
![]()
> We can investigate if a newer version of the Eclipse compare editor treats that kind of pseudo conflict differently. I'm also wondering if there's an extra trailing space that is confusing it on the proposed state. We will post the information to work item 148609.
Ok. In my opinnion, extra trailing space should be an option which could be turned on or off. I would prefer to ignore any whitespace difference (in the end of line), although others might have their own reasons to turn this on. >> When you hit further confusing conflict situations, you can always open a work item against Rational Team Concert / Source Control, with screenshots. We always like to hear about real situations. Is this forum a correct place to post this info, or is there another place for that? I would like also to know your response about auto-merge. That is, will it be possible in the future to ask to merge automatically always except on strict merge conflicts |
![]()
Geoffrey Clemm (30.1k●3●30●35)
| answered Jan 04 '11, 10:08 a.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
Based on your screenshot, the two developers have made different changes
(producing the "conflict" report), but that one developer's change was a subset of the other developer's change. I can certainly see how one might want that to be auto-mergeable, so you should feel free to make that request (I'd probably classify it as an "enhancement", but that's up to you). But I believe that the default RTC text merge tool is just inherited from Eclipse, so that request would need to be submitted to the Eclipse project (RTC SCM team: is that right?) Alternatively, you can just tell RTC to use a different merge tool, if you have one that you prefer (you specify the merge tool you want used in the Eclipse preferences). Cheers, Geoff On 1/4/2011 5:23 AM, dariusdamalakas wrote:
|
![]()
Geoffrey Clemm (30.1k●3●30●35)
| answered Jan 04 '11, 12:38 p.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
That enhancement request is work item 148609.
Please feel free to indicate your interest and support via a comment there. Cheers, Geoff On 1/4/2011 9:23 AM, dariusdamalakas wrote: I would like also to know your response about auto-merge. That is, |
Your answer
Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.