We use the default view in Bitbucket. My biggest gripes are:
1) Its diffing algorithm is mediocre and tends to interleave changes a few lines at a time instead of showing blocks replaced, which can make the code very difficult to read through (you can open up a side-by-side diff, which is more legible, but is available only in a modal and has to be closed in order to leave comments - awful UX)
2) Any new commit added to the pull request hides all previous comments even on unaffected files - they can still be found in the "activity" tab but without full file context.
3) Bitbucket collapses code more than N lines away from changed lines (good) but only expands 10 lines at a time if you want more context... slowly (awful if you need to get through 300 lines to find out which class this method belongs to).
1) Its diffing algorithm is mediocre and tends to interleave changes a few lines at a time instead of showing blocks replaced, which can make the code very difficult to read through (you can open up a side-by-side diff, which is more legible, but is available only in a modal and has to be closed in order to leave comments - awful UX)
2) Any new commit added to the pull request hides all previous comments even on unaffected files - they can still be found in the "activity" tab but without full file context.
3) Bitbucket collapses code more than N lines away from changed lines (good) but only expands 10 lines at a time if you want more context... slowly (awful if you need to get through 300 lines to find out which class this method belongs to).