On Nov 13, 2015 9:15 AM, "Tony Papadimitriou" <[email protected]> wrote:
>
> Sorry for the confusion.
> By “merge from trunk” I mean I’m in branch ‘trunk’ and from there I’m
doing the merge.
> And, I’m merging the “check-in from the ... [other] branch”  I mean the
check-in which is part of the other part.
>
> I think I’m beginning to understand what’s going on.  If I do a full
merge (no cherry pick) there are no conflicts.
> So, it seems the fact that the SRF_OUT label was renamed in an earlier
check-in that the one I’m cherry picking is confusing it.
> What should have happened actually (what I expected with the cherry pick)
is not exactly what I mentioned earlier.
> The ‘puts’ change being part of the check-in I cherry picked should have
merged in and the SRF_OUT rename (being from an older check-in) in the
development branch should have stayed out.
>
> This is a conflict if you look at this line of code as one piece (i.e.,
you either merge the whole line or none of it).

I believe with 99% confidence that you've hit the nail on the head. Merge
is line based. It either merges one or a block of lines as a single entity.
It doesn't deal with line fragments. To prove this to yourself, you could
create a repo with a single file and a single line of text. Branch it an
add a character to the end. Go back to trunk and create a new commit with
an new character at the beginning of the line. Try to merge. The same line
was modified in both branches so it isn't sure what to do.

I'm doing this from memory on my phone, so if I'm wrong, my apologies. And
I'll be surprised! :)
_______________________________________________
fossil-users mailing list
[email protected]
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users

Reply via email to