When you are working on separate branches with separate teams in parallel there are immense no of check-ins that we all do. The next big thing is to merge the code on git. I have started to feel that this becomes extremely easy if each functionality as a whole has a single check-in, which in-turn will have a commit id. It then makes it really easier to merge by cherry-pick rather than the whole branch merge. It also gives a power to pick just one part of the code base and not as a whole.
what do you guys prefer while merging? I would love to know and learn.