Thanks to visit codestin.com
Credit goes to lib.rs

#pull-request #git #branch #review #reviewed

app cresca

A tool to partially review the pull requests

3 releases (breaking)

0.3.0 Dec 30, 2025
0.2.0 May 17, 2025
0.1.0 Nov 9, 2024

#7 in #review

MIT license

23KB
458 lines

cresca

A tool to partially review the pull requests.

By marking the reviewed changes as commit instead of "viewed" checkbox in GitHub, there is no confusion about which changes are already reviewed and which are not.

Installation

cargo install cresca

Also You need to have git installed.

Usage

  1. Start a review by specifying the branches. Following example will prepare a review branch (named review-main-develop) for the PR that develop is to be merged into main.

    cresca review main develop
    
  2. Review the changes and stage them. You don't have to stage all the changes (e.g. if there are 20 lines of changes in hello.txt, you can stage only 10 lines of it). Stage only the changes you have reviewed. "Stage Selected Ranges" in VSCode is useful for this.

  3. Approve the reviewed changes.

    cresca approve
    
  4. If the assignee pushes new changes after the PR is reviewed, go back to step 1. Only the new changes will be shown in the review branch.

  5. After the PR is merged, you can just delete the review branch.

Advanced Usage

Reviewing a Specific Range of Commits

When dealing with large PRs, you can limit the review scope using --skip-to and --stop-at options:

merge-base ---- A ---- B ---- C ---- D ---- develop
                       ^             ^
               --skip-to=B     --stop-at=C
Option Description
--skip-to <hash> Auto-approve commits before this hash
--stop-at <hash> Exclude commits after this hash from review

Examples:

# Review only commits B, C (auto-approve A, exclude D)
cresca review main develop --skip-to=B --stop-at=C

# Review from B to develop (auto-approve A)
cresca review main develop --skip-to=B

# Review from merge-base to C (exclude D)
cresca review main develop --stop-at=C

Use git log --oneline main..develop to see available commits.

License

MIT

Dependencies

~1–12MB
~78K SLoC