# git merge successfully however this is still issue from logical perspective

4 messages from 2011-10-26 to 2011-10-26. Participants: Lynn Lin, Thomas Rast.
Thread: https://gitlist.dev/t/28772

## Lynn Lin, 2011-10-26 12:08

Subject: git merge successfully however this is still issue from logical perspective
Message-ID: <CAPgpnMSSOss=YxsMUZJ3E5TynDfHJG1i6PKitLBo_Tm7f=_+fQ@mail.gmail.com>
URL: https://gitlist.dev/e/CAPgpnMSSOss%3DYxsMUZJ3E5TynDfHJG1i6PKitLBo_Tm7f%3D_%2BfQ%40mail.gmail.com

```
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)


Thanks
Lynn

```

## Thomas Rast, 2011-10-26 12:27

Subject: Re: git merge successfully however this is still issue from logical perspective
Message-ID: <201110261427.03585.trast@student.ethz.ch>
URL: https://gitlist.dev/e/201110261427.03585.trast%40student.ethz.ch
In-Reply-To: <CAPgpnMSSOss=YxsMUZJ3E5TynDfHJG1i6PKitLBo_Tm7f=_+fQ@mail.gmail.com>

```
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.

-- 
Thomas Rast
trast@{inf,student}.ethz.ch

```

## Lynn Lin, 2011-10-26 12:29

Subject: Re: git merge successfully however this is still issue from logical perspective
Message-ID: <CAPgpnMR6_pRxMSLcdS=M4Cfj=dqk6KTXr3VGhk3LrnPHyv2waA@mail.gmail.com>
URL: https://gitlist.dev/e/CAPgpnMR6_pRxMSLcdS%3DM4Cfj%3Ddqk6KTXr3VGhk3LrnPHyv2waA%40mail.gmail.com
In-Reply-To: <201110261427.03585.trast@student.ethz.ch>

```
On Wed, Oct 26, 2011 at 8:27 PM, Thomas Rast <trast@student.ethz.ch> 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  ?

>
> --
> Thomas Rast
> trast@{inf,student}.ethz.ch
>

```

## Thomas Rast, 2011-10-26 12:39

Subject: Re: git merge successfully however this is still issue from logical perspective
Message-ID: <201110261439.10751.trast@student.ethz.ch>
URL: https://gitlist.dev/e/201110261439.10751.trast%40student.ethz.ch
In-Reply-To: <CAPgpnMR6_pRxMSLcdS=M4Cfj=dqk6KTXr3VGhk3LrnPHyv2waA@mail.gmail.com>

```
Lynn Lin wrote:
> On Wed, Oct 26, 2011 at 8:27 PM, Thomas Rast <trast@student.ethz.ch> 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

```
