|
| 1 | +# Contributing |
| 2 | + |
| 3 | +<!-- START doctoc generated TOC please keep comment here to allow auto update --> |
| 4 | +<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --> |
| 5 | +## Contents |
| 6 | + |
| 7 | +- [Reporting bugs](#reporting-bugs) |
| 8 | + - [Example](#example) |
| 9 | +- [Getting Started](#getting-started) |
| 10 | + - [Clone the repo](#clone-the-repo) |
| 11 | + - [If there's no issue, please create one](#if-theres-no-issue-please-create-one) |
| 12 | + - [Let us Know you're working on the issue](#let-us-know-youre-working-on-the-issue) |
| 13 | + - [Create a feature branch:](#create-a-feature-branch) |
| 14 | + - [Make your changes and commit:](#make-your-changes-and-commit) |
| 15 | + - [Create a Pull Request](#create-a-pull-request) |
| 16 | + - [PR Merge Exception](#pr-merge-exception) |
| 17 | + - [PR Hints](#pr-hints) |
| 18 | + - [For large changes spanning many commits / PRs](#for-large-changes-spanning-many-commits--prs) |
| 19 | + |
| 20 | +<!-- END doctoc generated TOC please keep comment here to allow auto update --> |
| 21 | + |
| 22 | +## Reporting bugs |
| 23 | + |
| 24 | +Bug reports should contain the following information: |
| 25 | + |
| 26 | +* Summary: A brief description. |
| 27 | +* Steps to reproduce: How did you encounter the bug? Instructions to reproduce it. |
| 28 | +* Expected behavior: How did you expect it to behave? |
| 29 | +* Actual behavior: How did it actually behave? |
| 30 | +* Screenshot or animated gif: If possible, attach visual documentation of the bug. |
| 31 | +* References: Links to any related tickets or information sources. |
| 32 | + |
| 33 | +### Example |
| 34 | + |
| 35 | +Here's a [real issue](https://github.com/woothemes/woocommerce/issues/8563#issue-94518347) to demonstrate. |
| 36 | + |
| 37 | + |
| 38 | +## Getting Started |
| 39 | + |
| 40 | +### Clone the repo |
| 41 | + |
| 42 | +* Click the GitHub fork button to create your own fork |
| 43 | +* Clone your fork of the repo to your dev system |
| 44 | + |
| 45 | +``` |
| 46 | +git clone git@github.com:eq8/core.git |
| 47 | +``` |
| 48 | + |
| 49 | +### If there's no issue, please create one |
| 50 | + |
| 51 | + |
| 52 | +### Let us Know you're working on the issue |
| 53 | + |
| 54 | +If you're actively working on an issue, please comment in the issue thread stating that you're working on a fix, or (if you're an official contributor) assign it to yourself. |
| 55 | + |
| 56 | +This way, others will know they shouldn't try to work on a fix at the same time. |
| 57 | + |
| 58 | + |
| 59 | +### Create a feature branch: |
| 60 | + |
| 61 | +``` |
| 62 | +git checkout -b <your-branch-name> |
| 63 | +``` |
| 64 | + |
| 65 | +### Make your changes and commit: |
| 66 | + |
| 67 | +``` |
| 68 | +git commit -m '<type>(<scope>): <subject> |
| 69 | +<BLANK LINE> |
| 70 | +<body> |
| 71 | +<BLANK LINE> |
| 72 | +<footer>' |
| 73 | +``` |
| 74 | + |
| 75 | +### Create a Pull Request |
| 76 | + |
| 77 | +Please don't merge your own changes. Create a pull request so others can review the changes. |
| 78 | + |
| 79 | +**Push changes:** |
| 80 | + |
| 81 | +``` |
| 82 | +git push origin <your-feature-branch> |
| 83 | +``` |
| 84 | + |
| 85 | +* Open your repository fork on GitHub |
| 86 | +* You should see a button to create a pull request - Press it |
| 87 | +* Consider mentioning a contributor in your pull request comments to alert them that it's available for review |
| 88 | +* **Wait for the reviewer to approve and merge the request** |
| 89 | + |
| 90 | +### PR Merge Exception |
| 91 | + |
| 92 | +* Minor documentation grammar/spelling fixes (code example changes should be reviewed) |
| 93 | + |
| 94 | + |
| 95 | +### PR Hints |
| 96 | + |
| 97 | +Reference the issue number in the footer part of your commit message e.g.: |
| 98 | + |
| 99 | +``` |
| 100 | +$ git commit -m 'docs(CONTRIBUTING.md): follow the PR process for contributions |
| 101 | +
|
| 102 | +Closes #5' |
| 103 | +``` |
| 104 | + |
| 105 | +#### For large changes spanning many commits / PRs |
| 106 | + |
| 107 | +* Create a meta-issue with a bullet list using the `* [ ] item` markdown syntax. |
| 108 | +* Create issues for each bullet point |
| 109 | +* Link to the meta-issue from each bullet point issue |
| 110 | +* Check off the bullet list as items get completed |
| 111 | + |
| 112 | +Linking from the bullet point issues to the meta issue will create a list of issues with status indicators in the issue comments stream, which will give us a quick visual reference to see what's done and what still needs doing. |
0 commit comments