It's strange that Git still does not have such a convenient tool "out of the box".
I use it heavily when updating some old version branch (which still has a lot of software users) by just some bugfixes from the current version branch. In this case, it is often needed to quickly get just some lines of code from the file in trunk, ignoring a lot of other changes (that are not supposed to go into the old version)...
And of course interactive three-way merge is needed in this case. git checkout --patch is not usable for this selective merge purpose.
You can do it easily:
Just add this line to [alias] section in your global .gitconfig or local .git/config file:
It implies you use Beyond Compare. Just change to the software of your choice if needed. Or you can change it to three-way auto-merge if you don't need the interactive selective merging: