diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 000000000..b4e021528 --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,24 @@ +_Thanks for contributing to Gambit! Before you submitting or reviewing a pull request, check out our [guidelines for contributing](https://gambitproject.readthedocs.io/en/latest/developer.contributing.html)._ + +_The person submitting the PR should ensure it has an informative title and update the headers below, before marking the PR as ready for review and assigning reviewers._ + +### Issues closed by this PR + +_Add any issues that are being closed by this PR to the list. Use "Closes" or [another keyword](https://docs.github.com/en/issues/tracking-your-work-with-issues/using-issues/linking-a-pull-request-to-an-issue#linking-a-pull-request-to-an-issue-using-a-keyword) followed by the issue number._ + +- Closes #ISSUE_NUMBER + +### Description of the changes in this PR + +_Update the description of the changes made in this PR. You can delete this section if the changes are already fully described in the linked issues._ + +This PR ... + +### How to review this PR + +_The gambit repository contains source code and documentation for several different components. Explain how a reviewer should approach reviewing the specific changes made in this PR._ + +_For example, you might include instructions like:_ +- _"Review code changes and ensure tests cover edge cases"_ +- _"Rebuild the GUI from this branch, then test features X, Y, Z work as expected"_ +- _"Click the link to the documentation page and sense check by reading"_ diff --git a/doc/developer.contributing.rst b/doc/developer.contributing.rst index 0abab8744..f86939850 100644 --- a/doc/developer.contributing.rst +++ b/doc/developer.contributing.rst @@ -37,8 +37,8 @@ version. 1. To get started contributing code in the `Gambit GitHub repo `__, do one of the following: -- Core developers: request contributor access from one of the `team `__ -- External contributors: fork the repository on GitHub. + - Core developers: request contributor access from one of the `team `__ + - External contributors: fork the repository on GitHub. 2. Clone the repository to your local machine :: @@ -63,9 +63,9 @@ version. Having `pre-commit` installed is recommended as it runs many of the same checks that are automatically conducted on any pull request. Every time you commit, it will automatically fix some issues and highlight others for manual adjustment. -5. Create a new branch for your changes :: +5. Create a new branch for your changes. It's good practice to either give the branch a descriptive name or directly reference an issue number :: - git checkout -b feature/your-feature-name + git checkout -b feature/issue-number 6. Make your changes. :: @@ -78,11 +78,22 @@ version. 7. Push your changes to your fork or branch :: - git push origin feature/your-feature-name + git push origin feature/issue-number + +8. Open a pull request on GitHub to the master branch of the upstream repository. Ensure your pull request: + + - Has an informative title. + - Links to any relevant issues. + - Includes a clear description of the changes made. + - Explains how a reviewer can test the changes. + + .. note:: + It's good practice to open a draft pull request early in the development process to facilitate discussion and feedback, ensure there are no merge conflicts, and allow for continuous integration testing via GitHub Actions. -8. Open a pull request on GitHub to the master branch of the upstream repository, describing your changes and linking to any relevant issues. 9. Core developers will review your changes, provide feedback, and merge them into the master branch if they meet the project's standards. +10. Once your pull request is merged, delete your branch on GitHub (a button should appear to do this automatically). + Testing your changes --------------------