Merge pull request #2297 from javorszky/iss2296

Update link to clean up history in contributing.md
This commit is contained in:
Hannah Wolfe 2014-03-01 10:17:47 +00:00
commit b84c8a4726

View File

@ -1,11 +1,11 @@
# Contributing to Ghost
So you're interested in giving us a hand? That's awesome! We've put together some brief guidelines that should help
So you're interested in giving us a hand? That's awesome! We've put together some brief guidelines that should help
you get started quickly and easily.
There are lots and lots of ways to get involved, this document covers:
* [raising issues](#raising-issues)
* [raising issues](#raising-issues)
* [bug reports](#bugs)
* [feature requests](#features)
* [change requests](#changes)
@ -19,14 +19,14 @@ There are lots and lots of ways to get involved, this document covers:
<a name="raising-issues"></a>
## Reporting An Issue
If you're about to raise an issue because think you've found a problem with Ghost, or you'd like to make a request
If you're about to raise an issue because think you've found a problem with Ghost, or you'd like to make a request
for a new feature in the codebase, or any other reason… please read this first.
The GitHub issue tracker is the preferred channel for [bug reports](#bugs),
[feature requests](#features), [change requests](#changes) and [submitting pull
requests](#pull-requests), but please respect the following restrictions:
* Please **search for existing issues**. Help us keep duplicate issues to a minimum by checking to see if someone
* Please **search for existing issues**. Help us keep duplicate issues to a minimum by checking to see if someone
has already reported your problem or requested your idea.
* Please **do not** use the issue tracker for personal support requests (use
@ -51,13 +51,13 @@ Guidelines for bug reports:
3. **Isolate the problem** &mdash; ideally create a [reduced test
case](http://css-tricks.com/6263-reduced-test-cases/) and a live example.
4. **Include a screencast if relevant** - Is your issue about a design or front end feature or bug? The most
helpful thing in the world is if we can *see* what you're talking about.
4. **Include a screencast if relevant** - Is your issue about a design or front end feature or bug? The most
helpful thing in the world is if we can *see* what you're talking about.
Use [LICEcap](http://www.cockos.com/licecap/) to quickly and easily record a short screencast (24fps) and save it as an animated gif! Embed it directly into your GitHub issue. Kapow.
5. Use the Bug Report template below or [click this link](https://github.com/TryGhost/Ghost/issues/new?title=Bug%3A&body=%23%23%23%20Issue%20Summary%0A%0A%23%23%23%20Steps%20to%20Reproduce%0A%0A1.%20This%20is%20the%20first%20step%0A%0AThis%20is%20a%20bug%20because...%0A%0A%23%23%23%20Technical%20details%0A%0A*%20Ghost%20Version%3A%20master%20-%20latest%20commit%3A%20%20INSERT%20COMMIT%20REF%0A*%20Client%20OS%3A%20%0A*%20Server%20OS%3A%20%0A*%20Node%20Version%3A%20%0A*%20Browser%3A) to start creating a bug report with the template automatically.
A good bug report shouldn't leave others needing to chase you up for more information. Be sure to include the
A good bug report shouldn't leave others needing to chase you up for more information. Be sure to include the
details of your environment.
Here is a [real example](https://github.com/TryGhost/Ghost/issues/413)
@ -80,7 +80,7 @@ suitable, include the steps required to reproduce the bug.
Any other information you want to share that is relevant to the issue being
reported. Especially, why do you consider this to be a bug? What do you expect to happen instead?
### Technical details:
### Technical details:
* Ghost Version: master (latest commit: 590ba48988b51b9c5e8d99afbb84c997436d7f21)
* Client OS: Mac OS X 10.8.4
@ -95,38 +95,38 @@ reported. Especially, why do you consider this to be a bug? What do you expect t
Feature requests are welcome. Before you submit one be sure to have:
1. Read the [Roadmap](https://github.com/TryGhost/Ghost/wiki/Roadmap) and
[Planned Features](https://github.com/TryGhost/Ghost/wiki/Planned-Features) listing, **use the GitHub search** and
[Planned Features](https://github.com/TryGhost/Ghost/wiki/Planned-Features) listing, **use the GitHub search** and
check the feature hasn't already been requested.
2. Take a moment to think about whether your idea fits with the scope and aims of the project, or if it might
2. Take a moment to think about whether your idea fits with the scope and aims of the project, or if it might
better fit being an app/plugin.
3. Remember, it's up to *you* to make a strong case to convince the project's leaders of the merits of this
feature. Please provide as much detail and context as possible, this means explaining the use case and why it is
likely to be common.
3. Remember, it's up to *you* to make a strong case to convince the project's leaders of the merits of this
feature. Please provide as much detail and context as possible, this means explaining the use case and why it is
likely to be common.
4. Clearly indicate whether this is a feature request for Ghost admin, or for themes or apps.
<a name="changes"></a>
### Change Requests
Change requests cover both architectural and functional changes to how Ghost works. If you have an idea for a
Change requests cover both architectural and functional changes to how Ghost works. If you have an idea for a
new or different dependency, a refactor, or an improvement to a feature, etc - please be sure to:
1. **Use the GitHub search** and check someone else didn't get there first
2. Take a moment to think about the best way to make a case for, and explain what you're thinking. Are you sure
2. Take a moment to think about the best way to make a case for, and explain what you're thinking. Are you sure
this shouldn't really be a [bug report](#bug-reports) or a [feature request](#feature-requests)? Is it really one
idea or is it many? What's the context? What problem are you solving? Why is what you are suggesting better than
what's already there? Does it fit with the Roadmap?
what's already there? Does it fit with the Roadmap?
<a name="pull-requests"></a>
### Submitting Pull Requests
Pull requests are awesome. If you're looking to raise a PR for something which doesn't have an open issue, please think carefully about [raising an issue](#raising-issues) which your PR can close, especially if you're fixing a bug. This makes it more likely that there will be enough information available for your PR to be properly tested and merged. To make sure your PR is accepted as quickly as possible, you should be sure to have read
Pull requests are awesome. If you're looking to raise a PR for something which doesn't have an open issue, please think carefully about [raising an issue](#raising-issues) which your PR can close, especially if you're fixing a bug. This makes it more likely that there will be enough information available for your PR to be properly tested and merged. To make sure your PR is accepted as quickly as possible, you should be sure to have read
all the guidelines on:
* [code standards](https://github.com/TryGhost/Ghost/wiki/Code-standards)
* [commit messages](https://github.com/TryGhost/Ghost/wiki/Git-workflow#commit-messages)
* [cleaning-up history](https://github.com/TryGhost/Ghost/wiki/Git-workflow#clean-up-history)
* [cleaning-up history](https://github.com/TryGhost/Ghost/wiki/Git-workflow#wiki-clean-up-history)
* [not breaking the build](https://github.com/TryGhost/Ghost/wiki/Git-workflow#check-it-passes-the-tests)
##### Need Help?
@ -138,29 +138,29 @@ If you're not completely clear on how to submit / update / *do* Pull Requests, p
<a name="testing"></a>
### Testing and Quality Assurance
Never underestimate just how useful quality assurance is. If you're looking to get involved with the code base and
Never underestimate just how useful quality assurance is. If you're looking to get involved with the code base and
don't know where to start, checking out and testing a pull request is one of the most useful things you could do.
If you want to get involved with testing Ghost, there is a set of
If you want to get involved with testing Ghost, there is a set of
[QA Documentation](https://github.com/TryGhost/Ghost/wiki/QA-Documentation) on the wiki.
Essentially though, [check out the latest master](#core), take it for a spin, and if you find anything odd, please
Essentially though, [check out the latest master](#core), take it for a spin, and if you find anything odd, please
follow the [bug report guidelines](#bug-reports) and let us know!
#### Checking out a Pull Request
These are some [excellent instructions](https://gist.github.com/piscisaureus/3342247) on configuring your GitHub
repository to allow you to checkout pull requests in the same way as branches:
These are some [excellent instructions](https://gist.github.com/piscisaureus/3342247) on configuring your GitHub
repository to allow you to checkout pull requests in the same way as branches:
<https://gist.github.com/piscisaureus/3342247>.
<a name="documentation"></a>
### Documentation
Ghost's main documentation can be found at [docs.ghost.org](http://docs.ghost.org).
Ghost's main documentation can be found at [docs.ghost.org](http://docs.ghost.org).
The documentation is generated using jekyll, all of the docs are on the gh-pages branch on the GitHub repository.
You can clone the repo, checkout the gh-pages branch, and submit pull requests following
The documentation is generated using jekyll, all of the docs are on the gh-pages branch on the GitHub repository.
You can clone the repo, checkout the gh-pages branch, and submit pull requests following
the [pull-request](#pull-requests) guidelines.
@ -174,7 +174,7 @@ Full documentation on contributing translations can be found at <http://docs.gho
<a name="core"></a>
## Working on Ghost Core
**Note:** It is recommended that you use the [Ghost-Vagrant](https://github.com/TryGhost/Ghost-Vagrant) setup for
**Note:** It is recommended that you use the [Ghost-Vagrant](https://github.com/TryGhost/Ghost-Vagrant) setup for
developing Ghost.
**Pre-requisites:**
@ -215,25 +215,25 @@ Addresses for development:
### Updating with the latest changes
Pulling down the latest changes from master will often require more than just a pull, you may also need to do one
Pulling down the latest changes from master will often require more than just a pull, you may also need to do one
or more of the following:
* `npm install` - fetch any new dependencies
* `git submodule update` - fetch the latest changes to Casper (the default theme)
* `grunt` - will recompile handlebars templates and sass for the admin (as long as you have previously
* `grunt` - will recompile handlebars templates and sass for the admin (as long as you have previously
run `grunt init` to install bourbon)
* delete content/data/*.db - delete the database and allow Ghost to recreate the fixtures
### Key Branches & Tags
- **[master](https://github.com/TryGhost/Ghost)** is the bleeding edge development branch. All work on the next
- **[master](https://github.com/TryGhost/Ghost)** is the bleeding edge development branch. All work on the next
release is here.
- **[gh-pages](http://tryghost.github.io/Ghost)** is The Ghost Guide documentation for Getting Started with Ghost.
### Compiling CSS & JavaScript
A SASS compiler is required to work with the CSS in this project. You can either do this by running `grunt` from
the command line - or by using a 3rd party app. We recommend [CodeKit](http://incident57.com/codekit/) (Paid/Mac)
A SASS compiler is required to work with the CSS in this project. You can either do this by running `grunt` from
the command line - or by using a 3rd party app. We recommend [CodeKit](http://incident57.com/codekit/) (Paid/Mac)
& [Scout](http://mhs.github.io/scout-app/) (Free/Mac/PC).
You will need to have Ruby installed, as well as having run `gem install sass && gem install bourbon`.
@ -241,19 +241,19 @@ You will need to have Ruby installed, as well as having run `gem install sass &&
Ghost uses Grunt heavily to automate useful tasks such as building assets, testing, live reloading/watching etc etc
[Grunt Toolkit docs](https://github.com/TryGhost/Ghost/wiki/Grunt-Toolkit) are a worthwhile read for any would-be
[Grunt Toolkit docs](https://github.com/TryGhost/Ghost/wiki/Grunt-Toolkit) are a worthwhile read for any would-be
contributor.
## Troubleshooting / FAQ
### I get "ERROR: Failed to lookup view "index"
Sounds like you don't have our default theme - Casper, your content/themes/casper folder is probably empty.
When cloning from GitHub be sure to use SSH and to run `git submodule update --init`.
Sounds like you don't have our default theme - Casper, your content/themes/casper folder is probably empty.
When cloning from GitHub be sure to use SSH and to run `git submodule update --init`.
### I get "Syntax error: File to import not found or unreadable: bourbon/_bourbon."
Sounds like you don't have the Ruby gem "bourbon" installed. Make sure you have Ruby, and then
Sounds like you don't have the Ruby gem "bourbon" installed. Make sure you have Ruby, and then
run `gem install bourbon`, and `grunt init`.
### Ghost doesn't do anything - I get a blank screen
@ -262,31 +262,31 @@ Sounds like you probably didn't run the right grunt command for building assets
### SQLite3 doesn't install properly during npm install
Ghost depends upon SQLite3, which requires a native binary. These are provided for most major platforms, but if you
are using a more obscure *nix flavor you may need to follow
Ghost depends upon SQLite3, which requires a native binary. These are provided for most major platforms, but if you
are using a more obscure *nix flavor you may need to follow
the [node-sqlite3 binary instructions](https://github.com/developmentseed/node-sqlite3/wiki/Binaries).
## Contributor License Agreement
By contributing your code to Ghost you grant the Ghost Foundation a non-exclusive, irrevocable, worldwide,
royalty-free, sublicenseable, transferable license under all of Your relevant intellectual property rights
(including copyright, patent, and any other rights), to use, copy, prepare derivative works of, distribute and
publicly perform and display the Contributions on any licensing terms, including without limitation:
(a) open source licenses like the MIT license; and (b) binary, proprietary, or commercial licenses. Except for the
By contributing your code to Ghost you grant the Ghost Foundation a non-exclusive, irrevocable, worldwide,
royalty-free, sublicenseable, transferable license under all of Your relevant intellectual property rights
(including copyright, patent, and any other rights), to use, copy, prepare derivative works of, distribute and
publicly perform and display the Contributions on any licensing terms, including without limitation:
(a) open source licenses like the MIT license; and (b) binary, proprietary, or commercial licenses. Except for the
licenses granted herein, You reserve all right, title, and interest in and to the Contribution.
You confirm that you are able to grant us these rights. You represent that You are legally entitled to grant the
above license. If Your employer has rights to intellectual property that You create, You represent that You have
received permission to make the Contributions on behalf of that employer, or that Your employer has waived such
You confirm that you are able to grant us these rights. You represent that You are legally entitled to grant the
above license. If Your employer has rights to intellectual property that You create, You represent that You have
received permission to make the Contributions on behalf of that employer, or that Your employer has waived such
rights for the Contributions.
You represent that the Contributions are Your original works of authorship, and to Your knowledge, no other person
claims, or has the right to claim, any right in any invention or patent related to the Contributions. You also
represent that You are not legally obligated, whether by entering into an agreement or otherwise, in any way that
You represent that the Contributions are Your original works of authorship, and to Your knowledge, no other person
claims, or has the right to claim, any right in any invention or patent related to the Contributions. You also
represent that You are not legally obligated, whether by entering into an agreement or otherwise, in any way that
conflicts with the terms of this license.
The Ghost Foundation acknowledges that, except as explicitly described in this Agreement, any Contribution which
you provide is on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED,
INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY, OR FITNESS
The Ghost Foundation acknowledges that, except as explicitly described in this Agreement, any Contribution which
you provide is on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED,
INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY, OR FITNESS
FOR A PARTICULAR PURPOSE.