I have master branch, and a release branch. Last commit on the release branch added couple lines to files, let's say, A and B. Then these changes were merged into master (things happen).
Later, number of other commits were made to master, one of which removed those couple lines from A and B again.
Now I merge master into release. Everything merges fine (except for couple minor conflicts), but files A and B left unchanged with those several lines present.
How could this happen? I can checkout the commit on release branch before the merge and repeat it again with the same result. Any commands/switches to understand what's happening during the merge?
EDIT. It seems I'm just doing something wrong, but I don't understand how to do it properly. I can replicate the issue very easily, and it seems it's happening because the 'bad' line was first added on master, then removed, and them master merged into release, where 'bad' line was also present. So the two commits from master 'annihilated', and release left unchanged, right?
So, what I'm doing: 7aee9be is release with 'bad' line 84d7ed2 is master before all the changes, older than above
Now I checkout 84d7ed2, add 'bad' line, commit (on a new test branch). Then I remove 'bad' line, commit. So test branch doesn't have the 'bad' line anymore. Then I checkout 7aee9be and merge test branch into it. 'bad' line is back, and the merge commit doesn't have any changes at all.