Enhanced Pull Request Review: Commit-by-Commit View and Improved Filtering

software development

GitHub's 'Files changed' experience gets a major update, introducing commit-by-commit review, refined commit and file filtering, performance boosts, and various fixes.

The latest update to the pull request "Files changed" experience on GitHub addresses a significant feature gap, enabling commit-by-commit review and enhancing commit filtering capabilities.

Review Commits Individually or in Subsets

Users can now review all commits, a selection of commits, or a single commit directly within the updated "Files changed" page. Previously, filtering to a single commit would redirect users to the classic view within the Commits tab. This enhancement ensures users remain on the "Files changed" page regardless of whether they are viewing all, selected, or individual commits, streamlining the review process.

Furthermore, all "Files changed" URL routes have been unified under a new /changes path. While existing /files (and /commits/:sha) URLs will continue to function, they will redirect to their /changes equivalents when the new feature is enabled.

The commit filter itself has also been improved, requiring fewer clicks to select a range or a specific commit. It can be accessed from the toolbar or by pressing C if single-key shortcuts are enabled.

Enhanced File Filtering

The file filter now features a blue dot indicator, clearly showing when filters are applied. A new "Clear filters" option has been added to the filter menu, providing a quick way to reset all filters to their default state.

Performance Improvements

Performance optimization remains a top priority, with ongoing improvements expected. Recent enhancements include:

  • Improved responsiveness when resizing the file tree.
  • Enhanced performance when toggling "Minimize comments" or "Split / Unified" settings.

Additional Fixes and Improvements

Several other issues and functionalities have been addressed:

  • Improved: Clicking the "Refresh" button after new changes are pushed to a pull request no longer triggers a full, often slow, page refresh.
  • Fixed: The Comments side panel will no longer report errors when attempting to resolve an already resolved comment.
  • Fixed: Diffs now load correctly even when file paths contain nonstandard characters, such as commas.
  • Fixed: The linguist-generated attribute in .gitattributes files is now properly respected.
  • Fixed: The T keyboard shortcut correctly focuses on the file filter field and displays the file tree when necessary.
  • Fixed: The C keyboard shortcut reliably opens the commit filter.

How to Access the New Experience

The enhanced commit-by-commit review and commit selector are integrated into the new "Files changed" experience. Users still on the classic view can activate these features by clicking "Try the new experience" at the top of the classic "Files changed" page.

Share Your Feedback

Your input is valuable. You can report issues, ask questions, and view known problems in the dedicated "Files changed" preview feedback discussion.