Lazy load compare commits
On the work on gitlab-org/gitlab-ce#14202 we creates a lot of commit instances that are not needed because we only need compare diffs the performance is not relevant but it's worth it to avoid code execution that is not going to be needed