I had the exact same problem as mentioned by you above. But I found this clearer in explaining the answer.
Check out the path(s) from the branch you want to merge,
$ git checkout source_branch -- <paths>...
Hint: It also works without
--like seen in the linked post.
or to selectively merge hunks
$ git checkout -p source_branch -- <paths>...
Alternatively, use reset and then add with the option
$ git reset <paths>... $ git add -p <paths>...
$ git commit -m "'Merge' these changes"