GitUp and SourceTree are, generally speaking, the same sort of thing. I think GitUp's main claim to fame is that it's a live view of repository that doesn't need to be refreshed. GitUp reads and monitors the
.git database directly, without actually using git. So this makes GitUp fairly fast. It also does a bit more than other GUIs with the commit graph. You can click on a commit and it'll check it out, for example. It's still in development, so there's bound to be usability problems though.
As for your rebase problem, it's true that GitUp won't solve that. It's a problem intrinsic to git or any version control system. My guess is that you have a feature branch with a bunch of commits and the master branch has a bunch of changes to the same lines of code.
One thing you could do is squash the commits on your feature branch. That way, when you do the rebase against master you'll have only one set of conflicts to solve. A rebase is just trying to 'play' each commit on top of a parent commit. So each commit on your branch will get played over and you'll find yourself fixing he same conflict over and over. Of course, if you want each of the commits on your feature branch to be merged onto master, doing a squash won't work.
In that case, something that my help is
git rerere. This is a way of recording merge conflict resolutions so that you only resolve a merge conflict once, and git will be able to re-solve the conflict the next time you try the same rebase. I don't have a tonne of experience with it, but here's a good article on it: http://git-scm.com/2010/03/08/rerere.html