Merge pull request #3895 from jekyll/update-contrib
Merge pull request 3895
This commit is contained in:
commit
d1620db235
|
@ -31,16 +31,25 @@ Test Dependencies
|
||||||
-----------------
|
-----------------
|
||||||
|
|
||||||
To run the test suite and build the gem you'll need to install Jekyll's
|
To run the test suite and build the gem you'll need to install Jekyll's
|
||||||
dependencies. Jekyll uses Bundler, so a quick run of the bundle command and
|
dependencies. Simply run this command to get all setup:
|
||||||
you're all set!
|
|
||||||
|
|
||||||
$ bundle
|
$ script/bootstrap
|
||||||
|
|
||||||
Before you start, run the tests and make sure that they pass (to confirm your
|
Before you start, run the tests and make sure that they pass (to confirm your
|
||||||
environment is configured properly):
|
environment is configured properly):
|
||||||
|
|
||||||
$ bundle exec rake test
|
$ script/cibuild
|
||||||
$ bundle exec script/cucumber
|
|
||||||
|
If you are only updating a file in `test/`, you can use the command:
|
||||||
|
|
||||||
|
$ script/test test/blah_test.rb
|
||||||
|
|
||||||
|
If you are only updating a `.feature` file, you can use the command:
|
||||||
|
|
||||||
|
$ script/cucumber features/blah.feature
|
||||||
|
|
||||||
|
Both `script/test` and `script/cucumber` can be run without arguments to
|
||||||
|
run its entire respective suite.
|
||||||
|
|
||||||
Workflow
|
Workflow
|
||||||
--------
|
--------
|
||||||
|
@ -48,10 +57,10 @@ Workflow
|
||||||
Here's the most direct way to get your work merged into the project:
|
Here's the most direct way to get your work merged into the project:
|
||||||
|
|
||||||
* Fork the project.
|
* Fork the project.
|
||||||
* Clone down your fork ( `git clone git@github.com:<username>/jekyll.git` ).
|
* Clone down your fork ( `git clone git@github.com:[username]/jekyll.git` ).
|
||||||
* Create a topic branch to contain your change ( `git checkout -b my_awesome_feature` ).
|
* Create a topic branch to contain your change ( `git checkout -b my_awesome_feature` ).
|
||||||
* Hack away, add tests. Not necessarily in that order.
|
* Hack away, add tests. Not necessarily in that order.
|
||||||
* Make sure everything still passes by running `rake`.
|
* Make sure everything still passes by running `script/cibuild`.
|
||||||
* If necessary, rebase your commits into logical chunks, without errors.
|
* If necessary, rebase your commits into logical chunks, without errors.
|
||||||
* Push the branch up ( `git push origin my_awesome_feature` ).
|
* Push the branch up ( `git push origin my_awesome_feature` ).
|
||||||
* Create a pull request against jekyll/jekyll and describe what your change
|
* Create a pull request against jekyll/jekyll and describe what your change
|
||||||
|
@ -74,11 +83,16 @@ requests directed at another branch will not be accepted.
|
||||||
The [Jekyll wiki](https://github.com/jekyll/jekyll/wiki) on GitHub
|
The [Jekyll wiki](https://github.com/jekyll/jekyll/wiki) on GitHub
|
||||||
can be freely updated without a pull request as all GitHub users have access.
|
can be freely updated without a pull request as all GitHub users have access.
|
||||||
|
|
||||||
|
If you want to add your plugin to the
|
||||||
|
[list of plugins](http://jekyllrb.com/docs/plugins/#available-plugins),
|
||||||
|
please submit a pull request modifying the
|
||||||
|
[plugins page source file](site/_docs/plugins.md) by adding a
|
||||||
|
link to your plugin under the proper subheading depending upon its type.
|
||||||
|
|
||||||
Gotchas
|
Gotchas
|
||||||
-------
|
-------
|
||||||
|
|
||||||
* If you want to bump the gem version, please put that in a separate commit.
|
* Please do not bump the gem version in your pull requests.
|
||||||
This way, the maintainers can control when the gem gets released.
|
|
||||||
* Try to keep your patch(es) based from the latest commit on jekyll/jekyll.
|
* Try to keep your patch(es) based from the latest commit on jekyll/jekyll.
|
||||||
The easier it is to apply your work, the less work the maintainers have to do,
|
The easier it is to apply your work, the less work the maintainers have to do,
|
||||||
which is always a good thing.
|
which is always a good thing.
|
||||||
|
|
|
@ -7,10 +7,12 @@ permalink: /docs/contributing/
|
||||||
So you've got an awesome idea to throw into Jekyll. Great! Please keep the
|
So you've got an awesome idea to throw into Jekyll. Great! Please keep the
|
||||||
following in mind:
|
following in mind:
|
||||||
|
|
||||||
|
* **Use https://talk.jekyllrb.com for non-technical or indirect Jekyll questions that are not bugs.**
|
||||||
|
* **Contributions will not be accepted without tests or necessary documentation updates.**
|
||||||
* If you're creating a small fix or patch to an existing feature, just a simple
|
* If you're creating a small fix or patch to an existing feature, just a simple
|
||||||
test will do. Please stay in the confines of the current test suite and use
|
test will do. Please stay in the confines of the current test suite and use
|
||||||
[Shoulda](https://github.com/thoughtbot/shoulda/tree/master) and
|
[Shoulda](https://github.com/thoughtbot/shoulda/tree/master) and
|
||||||
[RSpec Mocks](https://github.com/rspec/rspec-mocks/).
|
[RSpec-Mocks](https://github.com/rspec/rspec-mocks).
|
||||||
* If it's a brand new feature, make sure to create a new
|
* If it's a brand new feature, make sure to create a new
|
||||||
[Cucumber](https://github.com/cucumber/cucumber/) feature and reuse steps
|
[Cucumber](https://github.com/cucumber/cucumber/) feature and reuse steps
|
||||||
where appropriate. Also, whipping up some documentation in your fork's `site`
|
where appropriate. Also, whipping up some documentation in your fork's `site`
|
||||||
|
@ -36,24 +38,30 @@ following in mind:
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
Test Dependencies
|
Test Dependencies
|
||||||
-----------------
|
-----------------
|
||||||
|
|
||||||
To run the test suite and build the gem you'll need to install Jekyll's
|
To run the test suite and build the gem you'll need to install Jekyll's
|
||||||
dependencies. Jekyll uses Bundler, so a quick run of the `bundle` command and
|
dependencies. Simply run this command to get all setup:
|
||||||
you're all set!
|
|
||||||
|
|
||||||
{% highlight bash %}
|
$ script/bootstrap
|
||||||
$ bundle
|
|
||||||
{% endhighlight %}
|
|
||||||
|
|
||||||
Before you start, run the tests and make sure that they pass (to confirm your
|
Before you start, run the tests and make sure that they pass (to confirm your
|
||||||
environment is configured properly):
|
environment is configured properly):
|
||||||
|
|
||||||
{% highlight bash %}
|
$ script/cibuild
|
||||||
$ bundle exec rake test
|
|
||||||
$ bundle exec rake features
|
If you are only updating a file in `test/`, you can use the command:
|
||||||
{% endhighlight %}
|
|
||||||
|
$ script/test test/blah_test.rb
|
||||||
|
|
||||||
|
If you are only updating a `.feature` file, you can use the command:
|
||||||
|
|
||||||
|
$ script/cucumber features/blah.feature
|
||||||
|
|
||||||
|
Both `script/test` and `script/cucumber` can be run without arguments to
|
||||||
|
run its entire respective suite.
|
||||||
|
|
||||||
Workflow
|
Workflow
|
||||||
--------
|
--------
|
||||||
|
@ -61,30 +69,14 @@ Workflow
|
||||||
Here's the most direct way to get your work merged into the project:
|
Here's the most direct way to get your work merged into the project:
|
||||||
|
|
||||||
* Fork the project.
|
* Fork the project.
|
||||||
* Clone down your fork:
|
* Clone down your fork ( `git clone git@github.com:[username]/jekyll.git` ).
|
||||||
|
* Create a topic branch to contain your change ( `git checkout -b my_awesome_feature` ).
|
||||||
{% highlight bash %}
|
|
||||||
git clone git://github.com/<username>/jekyll.git
|
|
||||||
{% endhighlight %}
|
|
||||||
|
|
||||||
* Create a topic branch to contain your change:
|
|
||||||
|
|
||||||
{% highlight bash %}
|
|
||||||
git checkout -b my_awesome_feature
|
|
||||||
{% endhighlight %}
|
|
||||||
|
|
||||||
|
|
||||||
* Hack away, add tests. Not necessarily in that order.
|
* Hack away, add tests. Not necessarily in that order.
|
||||||
* Make sure everything still passes by running `rake`.
|
* Make sure everything still passes by running `script/cibuild`.
|
||||||
* If necessary, rebase your commits into logical chunks, without errors.
|
* If necessary, rebase your commits into logical chunks, without errors.
|
||||||
* Push the branch up:
|
* Push the branch up ( `git push origin my_awesome_feature` ).
|
||||||
|
* Create a pull request against jekyll/jekyll and describe what your change
|
||||||
{% highlight bash %}
|
does and the why you think it should be merged.
|
||||||
git push origin my_awesome_feature
|
|
||||||
{% endhighlight %}
|
|
||||||
|
|
||||||
* Create a pull request against jekyll/jekyll:master and describe what your
|
|
||||||
change does and the why you think it should be merged.
|
|
||||||
|
|
||||||
Updating Documentation
|
Updating Documentation
|
||||||
----------------------
|
----------------------
|
||||||
|
@ -101,8 +93,7 @@ All documentation pull requests should be directed at `master`. Pull
|
||||||
requests directed at another branch will not be accepted.
|
requests directed at another branch will not be accepted.
|
||||||
|
|
||||||
The [Jekyll wiki]({{ site.repository }}/wiki) on GitHub
|
The [Jekyll wiki]({{ site.repository }}/wiki) on GitHub
|
||||||
can be freely updated without a pull request as all
|
can be freely updated without a pull request as all GitHub users have access.
|
||||||
GitHub users have access.
|
|
||||||
|
|
||||||
If you want to add your plugin to the [list of plugins](/docs/plugins/#available-plugins),
|
If you want to add your plugin to the [list of plugins](/docs/plugins/#available-plugins),
|
||||||
please submit a pull request modifying the [plugins page source
|
please submit a pull request modifying the [plugins page source
|
||||||
|
@ -112,14 +103,15 @@ link to your plugin under the proper subheading depending upon its type.
|
||||||
Gotchas
|
Gotchas
|
||||||
-------
|
-------
|
||||||
|
|
||||||
* If you want to bump the gem version, please put that in a separate commit.
|
* Please do not bump the gem version in your pull requests.
|
||||||
This way, the maintainers can control when the gem gets released.
|
|
||||||
* Try to keep your patch(es) based from the latest commit on jekyll/jekyll.
|
* Try to keep your patch(es) based from the latest commit on jekyll/jekyll.
|
||||||
The easier it is to apply your work, the less work the maintainers have to
|
The easier it is to apply your work, the less work the maintainers have to do,
|
||||||
do, which is always a good thing.
|
which is always a good thing.
|
||||||
* Please don't tag your GitHub issue with \[fix\], \[feature\], etc. The
|
* Please don't tag your GitHub issue with [fix], [feature], etc. The maintainers
|
||||||
maintainers actively read the issues and will label it once they come across
|
actively read the issues and will label it once they come across it.
|
||||||
it.
|
|
||||||
|
Finally...
|
||||||
|
----------
|
||||||
|
|
||||||
<div class="note">
|
<div class="note">
|
||||||
<h5>Let us know what could be better!</h5>
|
<h5>Let us know what could be better!</h5>
|
||||||
|
|
Loading…
Reference in New Issue