This repository was archived by the owner on Mar 24, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 13
Pull Request Guide
Jignesh Patel edited this page Mar 30, 2016
·
5 revisions
If this is your first time creating a pull request, follow these steps to make the process easier.
You can always read previous pull requests to understand the process. For example, this pull request needed improvement. Below are the distilled lessons for first-timers on the Quickstep project:
- Make a small change. This means that your code should be at most 500 lines. Don't be afraid to go too small either. Adding a single function or improving a comment is fine and will probably be accepted very quickly.
- Stay sync'd with Master. A pull request will be merged with the master branch. This means that your custom branch must be up to date with master. This means you will have to do a merge or a rebase to sync with master if needed.
-
Follow style conventions. We follow Google's C++ [style guide] (https://github.com/pivotalsoftware/quickstep/wiki/Quickstep-Style-Guide), with a couple exceptions. It's important that running the script
third_party/cpplint/lint_everything.pyfinds no errors. Any errors, and you will get some stern looks from the reviewers. Even the Doxygen comment format is important. For more details, read this guide. -
Pass the other check scripts. You must pass
validate_cmakelists.pyandcyclic_dependency.pyor you will fail the Travis build. To see exactly what Travis does, check the.travis.ymlfile. -
Pass the unit tests. A good way to run all the unit tests is to go in your build folder and run
ctest. You can also run individual tests or tests based on regex matching withctest -R your_regex.
- Make a Description. Explain the purpose and summary of the changes you made in the header for the PR on github.
- Assign a reviewer. Reviewers are Quickstep folks who have already submitted a few pull requests themselves.
- Keep watching. Github is fairly pushy when it comes to notifications, so this probably won't be an issue. If nobody has responded within 3 days, comment and link a reviewer with github's '@' syntax.
Happy pulling!