At the moment we're explicitly checking source type twice: to get the diff and to get proper diff delimiter format. This can be hidden nicely behind some interface with 3 (for example) implementations: for GitLab, GitHub and BitBucket.