|
1 | 1 | Review and merge process |
2 | 2 | ======================== |
3 | 3 |
|
4 | | -.. note:: |
5 | | - |
6 | | - This page is intended to provide insight into the pull request (PR) review |
7 | | - process that we aspire to. As such, it is primarily targeted at engine |
8 | | - maintainers who are responsible for reviewing and approving pull requests. |
9 | | - That being said, much of the content is useful for prospective contributors |
10 | | - wanting to know how to ensure that their PR is merged. |
11 | | - |
12 | 4 | From a high level, the ideal life cycle of a pull request looks like the |
13 | 5 | following: |
14 | 6 |
|
15 | | - 1. A contributor opens a PR that fixes a specific problem (optimally closing |
16 | | - a GitHub `issue <https://github.com/godotengine/godot>`_ or implementing |
17 | | - a `proposal <https://github.com/godotengine/godot-proposals>`_). |
| 7 | + 1. A contributor :ref:`opens a pull request <doc_pr_workflow>` that fixes a |
| 8 | + specific problem (ideally closing a GitHub `issue <https://github.com/godotengine/godot>`_ |
| 9 | + or implementing a `proposal <https://github.com/godotengine/godot-proposals>`_). |
18 | 10 |
|
19 | | - 2. Other contributors provide feedback on the PR (including reviewing and/or |
20 | | - approving the PR, as appropriate). |
| 11 | + 2. The :ref:`bugsquad and triage team <doc_areas>` **categorize** the pull request, |
| 12 | + adding appropriate tags and requesting reviews from :ref:`area maintainers <doc_areas>`. |
21 | 13 |
|
22 | | - 3. An engine maintainer reviews the code and provides feedback, requests |
23 | | - changes, or approves the pull request, as appropriate. |
| 14 | + 3. Contributors discuss **whether the approach of the PR is appropriate** to fix the problem |
| 15 | + at hand, and leave feedback. |
24 | 16 |
|
25 | | - 4. Another maintainer reviews the code with a focus on code style/clarity and |
26 | | - approves it once satisfied. |
| 17 | + 4. Contributors **review the code**, and iterate improvements with the pull request author. |
| 18 | + When they are satisfied, they will approve the pull request. |
27 | 19 |
|
28 | | - 5. A team leader or a member of the `production team |
29 | | - <https://godotengine.org/teams#production>`_ merges the pull request if |
30 | | - satisfied that it has been sufficiently reviewed. |
31 | | - |
32 | | -This document will explain steps 2, 3, 4, and 5 in more detail. For a more |
33 | | -detailed explanation of the pull request workflow please see the :ref:`pull |
34 | | -request workflow document <doc_pr_workflow>`. |
| 20 | + 5. A release manager merges the pull request when there are sufficient approvals. A pull request |
| 21 | + always needs approvals from the respective :ref:`area maintainers <doc_areas>`, but reviews |
| 22 | + from other contributors help. |
35 | 23 |
|
36 | 24 | .. note:: |
37 | | - In practice these steps may blend together. Oftentimes maintainers will |
38 | | - provide comments on code style and code quality at the same time and will |
39 | | - approve a pull request for both. |
40 | | - |
41 | | -Typically the first interaction on a pull request will be an engine maintainer |
42 | | -assigning tags to the pull request and flagging it for review by someone |
43 | | -familiar with that area of code. |
44 | | - |
45 | | -Engine maintainers are folks who are "members" of the Godot project repository |
46 | | -on GitHub and/or are listed on the `Teams page <https://godotengine.org/teams>`_ |
47 | | -on the Godot website. Maintainers are responsible for a given area of the |
48 | | -engine. Typically this means they are the people who are given more trust to |
49 | | -approve and recommend pull requests for merging. |
| 25 | + In practice, the above steps may often blend together. |
50 | 26 |
|
51 | | -Even if you are not a maintainer, you can still help by reviewing code, |
52 | | -providing feedback on PRs and testing PRs locally on your machine to confirm |
53 | | -that they work as intended. Many of the currently active maintainers started out |
54 | | -doing this before they became maintainers. |
| 27 | +Even if you are not a maintainer, you can still help by :ref:`reviewing <doc_pr_review_guidelines>`, |
| 28 | +providing feedback, and :ref:`testing PRs <doc_testing_pull_requests>` locally on your machine |
| 29 | +to confirm that they work as intended. Many of the currently active maintainers started out doing |
| 30 | +this before they became maintainers. |
55 | 31 |
|
56 | 32 | When will a pull request get reviewed? |
57 | 33 | -------------------------------------- |
|
0 commit comments