3 releases (breaking)
| 0.3.0 | Dec 30, 2025 |
|---|---|
| 0.2.0 | May 17, 2025 |
| 0.1.0 | Nov 9, 2024 |
#7 in #review
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
-
Start a review by specifying the branches. Following example will prepare a review branch (named
review-main-develop) for the PR thatdevelopis to be merged intomain.cresca review main develop -
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.
-
Approve the reviewed changes.
cresca approve -
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.
-
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
Dependencies
~1–12MB
~78K SLoC