Usually, I feel like git is more than enough. But when I have my push rejected because I failed to fetch first, it's just a single click in IntelliJ to fetch, rebase my work on that and push it again.
There's also hub, from GitHub. I find myself using "hub sync" to update all my local branches at once.
There's also hub, from GitHub. I find myself using "hub sync" to update all my local branches at once.