Skip to content

Re-review with snapshots

When the author pushes again, you don’t need to read the whole pull request a second time. Revue keeps every push, so you can read only what changed since you last looked, or compare any two pushes.

A snapshot is the pull request as it stood after one push. Snapshot 2 shows the full pull request as of its second push, not only what changed since snapshot 1. To see only what changed between two snapshots, you read a range. Snapshots and ranges explains both.

The snapshot control in the bar at the top says which one you’re reading, and whether it’s the latest. Press ] and [ to step to the next and previous snapshot.

Revue remembers the last snapshot you looked at. When a push lands on a pull request you’ve read, the bar offers the changes, such as “2 new since snapshot 4”, with Show and a dismiss button.

  • Choose Show, press R, or choose Go › Changes Since Last Look. Revue opens the range from the snapshot you last looked at to the latest one.
  • To go back to the whole pull request, choose Whole pull request in the bar.

A snapshot counts as looked at once you’ve read it for a moment. To set it by hand, choose Go › Mark as Looked (⇧⌘L).

  1. Open the snapshot menu from the snapshot control in the bar.
  2. Choose Range.
  3. Choose the first snapshot, then Shift-click the second. In the stack card in the sidebar, Shift-click two snapshot tiles to do the same.
The snapshot menu set to Range, with snapshots 5 to 8 chosen, Ignoring rebases, and the Mark as looked buttonThe snapshot menu set to Range, with snapshots 5 to 8 chosen, Ignoring rebases, and the Mark as looked button

The bar then reads, for example, “snapshots 5 → 8”. Press ⌥1 to go back to one snapshot, and ⌥2 to return to a range. You can read comments in a range, but you can’t add one there.

When the base branch moved between two snapshots, a range would also show every commit that came in from the base. The snapshot menu’s Ignoring rebases leaves those out and shows only how this pull request’s own work changed. Including rebases compares the two snapshots as they are. Ignoring rebases hides nothing the author wrote.

A push that only rebased, with no change to the code, is a rebase-only snapshot. Revue shows it as a hatched segment rather than a numbered one, unless you turn off Quiet rebase-only snapshots.

When someone pushes, the new snapshot arrives and what you’re reading stays put. When a new snapshot arrives in Settings › Sync and stacks decides how Revue tells you:

  • Badge only marks the new snapshot in the bar. This is the default.
  • Notify also posts a notice.
  • Silent marks nothing.

A file you marked viewed keeps its mark in the next snapshot when its diff didn’t change. If the push changed the file, the mark is cleared so you read it again. Turn off Carry viewed marks across snapshots in Settings › Diff and review to start every snapshot with no files viewed.

SettingWhereOptionsDefault
When a new snapshot arrivesSettings › Sync and stacksNotify, Badge only, SilentBadge only
Quiet rebase-only snapshotsSettings › Sync and stacksOn or offOn
Carry viewed marks across snapshotsSettings › Diff and reviewOn or offOn
ActionKey
Next snapshot]
Previous snapshot[
Changes since last lookR
Snapshot⌥1
Range⌥2
Mark as looked⇧⌘L