feat(pulls): support per-commit review (#39326)

Opening a single commit of a PR let you look, but not review. The Review
button was disabled and there was no way to reach the next or previous
commit. This finishes https://github.com/go-gitea/gitea/pull/37475,
which only reached the head commit.

- Reviews can be submitted from a single commit, a commit range stays
disabled
- A bar above a single-commit diff shows the commit, its position in the
PR and prev/next buttons
- The commit dropdown marks the commits on screen
- Timeline commits open the PR's commit view, commits force-pushed out
of the PR redirect to the repository commit page

Assisted-by: Claude Code (Fable 5.1)
Co-authored-by: bircni <bircni@icloud.com>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Co-authored-by: silverwind <me@silverwind.io>
This commit is contained in:
authored and GitHub committed 2026-10-30 20:18:13 +00:00
1 parent cbb563b080
commit fa41fc94d4
12 files changed
+155 -35

No files matched your search

+5 -3
View File
@@ -1791,10 +1791,12 @@
"repo.pulls.filter_branch": "Filter branch",
"repo.pulls.show_all_commits": "Show all commits",
"repo.pulls.show_changes_since_your_last_review": "Show changes since your last review",
"repo.pulls.showing_only_single_commit": "Showing only changes of commit %[1]s",
"repo.pulls.showing_specified_commit_range": "Showing only changes between %[1]s..%[2]s",
"repo.pulls.select_commit_hold_shift_for_range": "Select commit. Hold Shift and click to select a range.",
"repo.pulls.review_only_possible_for_full_diff": "Review is only possible when viewing the full diff",
"repo.pulls.review_not_possible_for_commit_range": "Review is not possible when viewing a commit range",
"repo.pulls.commit_position": "Commit %[1]d of %[2]d",
"repo.pulls.previous_commit": "Previous commit",
"repo.pulls.next_commit": "Next commit",
"repo.pulls.filter_changes_by_commit": "Filter by commit",
"repo.pulls.nothing_to_compare": "There are no differences to show. There is no need to create a pull request.",
"repo.pulls.no_common_history": "These branches do not share a common merge base. Select a different base or compare branch.",
@@ -2626,7 +2628,7 @@
"repo.diff.comment.start_review": "Start review",
"repo.diff.comment.reply": "Reply",
"repo.diff.review": "Review",
"repo.diff.review.header": "Submit review",
"repo.diff.review.header": "Finish your review",
"repo.diff.review.placeholder": "Review comment",
"repo.diff.review.comment": "Comment",
"repo.diff.review.approve": "Approve",