-
Notifications
You must be signed in to change notification settings - Fork 3.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[DOCS][COMMUNITY] Committer guide and tips #2468
Merged
Merged
Changes from all commits
Commits
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,5 @@ | ||
.. _code_review_guide: | ||
|
||
Perform Code Reviews | ||
==================== | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,86 @@ | ||
.. _committer_guide: | ||
|
||
Committer Guide | ||
=============== | ||
This is an evolving document to provide some helpful tips for committers. | ||
Most of them are lessons learned during development. | ||
We welcome every committer to contribute to this document. | ||
See the :ref:`community_guide` for an overview of | ||
the committership and the general development process. | ||
|
||
Community First | ||
--------------- | ||
The collective effort of the community moves the project forward and | ||
makes the project awesome for everyone. | ||
When we make a decision, it is always helpful to keep the community in mind. | ||
Here are some example questions that we can ask: | ||
|
||
- How can I encourage new contributors to get more involved in the project? | ||
- Can I help to save my fellow committers' time? | ||
- Have I enabled the rest of the community to participate the | ||
design proposals? | ||
|
||
|
||
Public Archive Principle | ||
------------------------ | ||
While private channels such as face to face discussion are useful for development, | ||
they also create barriers for the broader community's participation. | ||
The Apache way of development requires all decisions | ||
to be made in public channels, which are archived and accessible to everyone. | ||
As a result, any contributor can keep up with the development by watching the | ||
archives and join the development anytime. | ||
|
||
While this principle applies to every contributor, | ||
it is especially important for committers. | ||
Here are some example applications of this principle: | ||
|
||
- When getting a project-related question from a personal channel, | ||
encourage the person to open a public thread in the discuss forum, | ||
so others in the community can benefit from the answer. | ||
- After an in-person discussion, send a summary to public channels | ||
(as an RFC or a discuss thread). | ||
|
||
|
||
Shepherd a Pull Request | ||
---------------------- | ||
|
||
Here are some tips to shepherd a pull request. | ||
You can also take a look at the :ref:`code_review_guide`. | ||
|
||
- Assign the PR to yourself, so that other committers | ||
know that the PR has already been tended to. | ||
- Make use of the status label to indicate the current status. | ||
- Check if an RFC needs to be sent. | ||
- If the contributor has not requested a reviewer, kindly | ||
ask the contributor to do so. | ||
If the PR comes from a new contributor, | ||
help the contributor to request reviewers | ||
and ask the contributor to do so next time. | ||
- Moderate the reviews, ask reviewers to approve explicitly. | ||
- Mark the PR as accepted and acknowledge the contributor/reviewers. | ||
- Merge the PR :) | ||
|
||
|
||
Time Management | ||
--------------- | ||
There are many things that a committer can do, such as | ||
moderating discussions, pull request reviews and | ||
code contributions. | ||
|
||
Working on an open source project can be rewarding, | ||
but also be a bit overwhelming sometimes. | ||
A little bit of time management might be helpful to alleviate the problem. | ||
For example, some committers have a "community day" in a week | ||
when they actively manage outstanding PRs, | ||
but watch the community less frequently in the rest of the time. | ||
|
||
Remember that your merit will never go away, so please | ||
take your time and pace when contributing to the project:) | ||
|
||
|
||
Broad Collaboration | ||
------------------- | ||
Sometimes, we tend to only interact with people we know. | ||
However, broad collaborations are necessary to the success of the project. | ||
Try to keep that in mind, shepherd PRs for, and request code reviews from | ||
community members who you do not interact physically. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
shall we make the "community day" record public so that people can know whom to reach out? only for committers who are willing to have an assigned "community day" of course.
Also we better find a way to enable committers/reviewers report their out-of-office status. e.g., github's "set your status" might be useful.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A pinned post on the forum would be great, but people might not know to check it. Maybe putting a blurb in the ISSUE_TEMPLATE would help.
👍 just depends on whether you think that's an intrusion into one's privacy :)