Code review on any line on any file in a merge request
Changing one line of code can easily impact other lines of code, where a function is used, or where an expected behavior is violated. Although it is possible to reference these in a comment on the changed line in many instances it makes more sense to leave the comment on the place that should be changed, but has not yet been changed. This is not possible in GitLab. Furthermore, problems might be found after a merge request is actually merged. It should be possible to comment on any line of any file at any time to find out why it is there. ### Further details / use cases - **access to unchanged lines in changed files** - when I am reviewing a file and I see changes that I think might have a broader impact, I want to view the entire file, not just the changed lines, and be able to leave a comment on those unchanged lines. ALWAYS show all lines in files – some engineers are not simply looking for occasionally increased context, but the entire file context the entire time. - **access to unchanged files** – when I am reviewing a file and I see changes that I think might impact another file, I want to be able open the other file, review and leave a comment if needed. ### Vision GitLab should make it convenient to perform comprehensive code reviews that span the entire source code of the project. We should make it easy to leave feedback anywhere at any time because the implications of even small code changes can be far reaching. ### Proposal **Improve access to unchanged lines and files** - expand entire file https://gitlab.com/gitlab-org/gitlab-ce/issues/19054 - open an unchanged file https://gitlab.com/gitlab-org/gitlab-ce/issues/52501 **Commenting on unchanged lines and files** - changed files https://gitlab.com/gitlab-org/gitlab-ce/issues/13950 This can be implemented immediately, although access to unchanged lines is awkward because it only expands chunk by chunk. - unchanged files https://gitlab.com/gitlab-org/gitlab-ce/issues/51823 This cannot be implemented until there is a way to access unchanged files in the merge request interface.
epic