Skip to content
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

Tweak contributing.md #742

Merged
merged 1 commit into from
Mar 21, 2017
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 22 additions & 15 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,24 +2,21 @@

## Filing an issue

If you want your issue to be resolved quickly, please include in your
issue:
If you want your issue to be resolved quickly, please include in your issue:

* Gatsby version, node.js version, OS version
* The contents of your `gatsby-node.js`, `gatsby-browser.js`, and `package.json`.
* The contents of your `gatsby-config.js` and `package.json` as well as your
`gatsby-node.js`, `gatsby-browser.js` `gatsby-ssr.js` files depending on
changes you've made there.

## Contributing
You can install the latest `master` version of Gatsby by following these
simple steps:
You can install the latest `master` version of Gatsby by following these steps:

* Clone the repo, navigate to its directory.
* Install Lerna if you don't have it already: `yarn global add lerna@^2.0.0-beta.0`
* Execute `yarn && lerna bootstrap` to install dependencies and cross link all the packages.
* Use `git pull` to update to latest Gatsby.

Test suite can be run via `yarn test`.

This project uses [FlowType](https://flowtype.org/) for static type checking.
* Install Lerna if you don't have it already: `yarn global add
lerna@^2.0.0-beta.0`
* Execute `yarn && lerna bootstrap` to install dependencies and cross link all
the packages.

The usual contributing steps are:

Expand All @@ -28,10 +25,20 @@ The usual contributing steps are:
* Install dependencies: `yarn && lerna bootstrap`
* Make sure tests are passing for you: `lerna run test`
* Create a topic branch: `git checkout -b topics/new-feature-name`
* Run `yarn run build` to do an initial build and ensure there are no errors.
* Run `yarn run watch` to watch code and compile your changes on the fly as you work.
* Symlink the built file from whatever plugin you're trying to modify (will be in `packages/package-name`) into your project's `node_modules/package-name` directory to avoid getting the node_modules folder coming across to your site.
* Run `lerna run build` to do an initial build of all packages and ensure there
are no errors.
* Now navigate to the package you want to modify and run `yarn run watch` to
watch that package's code and compile your changes on the fly as you work.
* Symlink the built file from the package you're modifying into your project's
`node_modules/package-name` directory (this avoids [problems we've seen with
using `npm|yarn
link`](https://github.com/yarnpkg/rfcs/blob/master/text/0000-yarn-knit.md))
* Add tests and code for your changes.
* Once you‘re done, make sure all tests still pass: `yarn test`
* Commit and push to your fork.
* Create an pull request from your branch.

Test suite can be run via `yarn test`.

This project uses [FlowType](https://flowtype.org/) for static type checking.