Merge Conflicts... I hate them
After losing half a day being actually further behind on my task than when I started the day, destroying yesterdays efforts, I discovered a passionate hatred for merge conflicts. But at the end of the day I learned some techniques that have made me a better developer for it.
How to mitigate the risk
There are quite a few strategies to minimise the risk of difficult merge conflicts. Some are better than others, for example, one way would be to never work with anyone else again.
Merging often from master is important, as well as resolving merge conflicts as quick as possible are important so that they don't get out of hand.
From a team perspective, it is important to keep the branches short lived and usually associated to just one topic (as opposed than just shoving a month's random work on a branch and then dealing with it later). Breaking the work into smaller tasks that are merged often make gnarly merge conflicts less likely.