Skip to content

Commit d147410

Browse files
committed
contributing guide: mention expectations around force pushes and squashing
1 parent d4e917f commit d147410

File tree

1 file changed

+17
-8
lines changed

1 file changed

+17
-8
lines changed

CONTRIBUTING.md

Lines changed: 17 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,23 @@ for a list of Miri maintainers.
1313

1414
[Rust Zulip]: https://rust-lang.zulipchat.com
1515

16+
### Pull review process
17+
18+
When you get a review, please take care of the requested changes in new commits. Do not amend
19+
existing commits. Generally avoid force-pushing. The only time you should force push is when there
20+
is a conflict with the master branch (in that case you should rebase across master, not merge), and
21+
all the way at the end of the review process when the reviewer tells you that the PR is done and you
22+
should squash the commits. For the latter case, use `git rebase --keep-base ...` to squash without
23+
changing the base commit your PR branches off of. (All this is to work around the fact that Github
24+
is quite bad at dealing with force pushes and does not support `git range-diff`. Maybe one day
25+
Github will be good at git and then life can become easier.)
26+
27+
Most PRs bounce back and forth between the reviewer and the author several times, so it is good to
28+
keep track of who is expected to take the next step. We are using the `S-waiting-for-review` and
29+
`S-waiting-for-author` labels for that. If a reviewer asked you to do some changes and you think
30+
they are all taken care of, post a comment saying `@rustbot ready` to mark a PR as ready for the
31+
next round of review.
32+
1633
### Larger-scale contributions
1734

1835
If you are thinking about making a larger-scale contribution -- in particular anything that needs
@@ -45,14 +62,6 @@ process for such contributions:
4562
This process is largely informal, and its primary goal is to more clearly communicate expectations.
4663
Please get in touch with us if you have any questions!
4764

48-
### Managing the review state
49-
50-
Most PRs bounce back and forth between the reviewer and the author several times, so it is good to
51-
keep track of who is expected to take the next step. We are using the `S-waiting-for-review` and
52-
`S-waiting-for-author` labels for that. If a reviewer asked you to do some changes and you think
53-
they are all taken care of, post a comment saying `@rustbot ready` to mark a PR as ready for the
54-
next round of review.
55-
5665
## Preparing the build environment
5766

5867
Miri heavily relies on internal and unstable rustc interfaces to execute MIR,

0 commit comments

Comments
 (0)