Lynn Lin wrote: > On Wed, Oct 26, 2011 at 8:27 PM, Thomas Rast <trast@xxxxxxxxxxxxxxx> wrote: > > Lynn Lin wrote: > >> Hi all, > >> Do this case can happen? When I do merge from one branch to master > >> branch,merge successfully however from code logical perspective it > >> fails and It cause code compile (our project is using C++ language) > > > > Sure. The easiest example is when one side of a merge renames foo() > > to bar(), while the other side introduces another call to foo() in an > > unrelated part of the code. > Does this mean we shouldn't trust merge result ? Depends what you mean by "trust". If you expected a merge to understand what the changes on each side were about, and then patch the code accordingly, no it can't do that.[*] You are in no way guaranteed that the result of a merge is correct or even compiles even if both sides of the merge were. But after all git-merge is just a tool doing a well-defined operation: textually merging the changes from both sides. AFAIK it could so far always be trusted with doing *that* correctly. [*] darcs can go half of the way by having more expressive "changesets", but this can also fail. I think the general problem is AI-complete. -- Thomas Rast trast@{inf,student}.ethz.ch -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html