Add contributors license agreements and instructions on how to contribute.

This commit is contained in:
Robert Smallshire
2015-06-04 10:08:20 +02:00
parent d257ced760
commit 6158cf3279
3 changed files with 2397 additions and 0 deletions
+94
View File
@@ -0,0 +1,94 @@
# How to contribute
Third-party patches are welcomed for improving Segpy. We simply can't
access the huge variety of SEG Y files produced by a myriad of other
systems.
Although we want to keep it as easy as possible to contribute changes that
get things working in your environment, there are a few guidelines that we
need contributors to follow so that we can have a chance of keeping on
top of things.
## Getting Started
The easiest way to help is by submitting issues reporting defects or
requesting additional features.
* Make sure you have a [GitHub account](https://github.com/signup/free)
* Submit an issue, assuming one does not already exist.
* Clearly describe the issue including steps to reproduce when it is a bug.
* Make sure you mention the earliest version that you know has the issue.
* Fork the repository on GitHub
## Making Changes
* You must own the copyright to the patch you're submitting, and be in a
position to transfer the copyright to Sixty North by agreeing to the either
the [Individual Contributor License Agreement](https://github.com/sixty-north/segpy/blob/master/docs/legal/segpy-individual-cla.pdf)
(for private individuals) or the [Entity Contributor License Agreement](https://github.com/sixty-north/segpy/blob/master/docs/legal/segpy-entity-cla.pdf)
(for corporations or other organisations).
* Make small commits in logical units.
* Ensure your code is in the spirit of [PEP 8](https://www.python.org/dev/peps/pep-0008/),
although we accept that much of what is in PEP 8 are guidelines
rather than rules, so we value readability over strict compliance.
* Check for unnecessary whitespace with `git diff --check` before committing.
* Make sure your commit messages are in the proper format.
````
Issue #1234 - Make the example in CONTRIBUTING imperative and concrete
Without this patch applied the example commit message in the CONTRIBUTING
document is not a concrete example. This is a problem because the
contributor is left to imagine what the commit message should look like
based on a description rather than an example. This patch fixes the
problem by making the example concrete and imperative.
The first line is a real life imperative statement with an issue number
from our issue tracker. The body describes the behavior without the patch,
why this is a problem, and how the patch fixes the problem when applied.
````
* Make sure you have added the necessary tests for your changes.
* Run _all_ the tests to assure nothing else was accidentally broken.
## Making Trivial Changes
### Documentation
For changes of a trivial nature to comments and documentation, it is not
always necessary to create a new issue. In this case, it is appropriate
to start the first line of a commit with 'Doc -' instead of an issue
number.
````
Doc - Add documentation commit example to CONTRIBUTING
There is no example for contributing a documentation commit
to the Segpy repository. This is a problem because the contributor
is left to assume how a commit of this nature may appear.
The first line is a real life imperative statement with 'Doc -' in
place of what would have been the ticket number in a
non-documentation related commit. The body describes the nature of
the new documentation or comments added.
````
## Submitting Changes
* Agree to the [Individual Contributor License Agreement](https://github.com/sixty-north/segpy/blob/master/docs/legal/segpy-individual-cla.pdf)
or the [Entity Contributor License Agreement](https://github.com/sixty-north/segpy/blob/master/docs/legal/segpy-entity-cla.pdf)
by attaching a copy of the current CLA to an email (so we know which
version you're agreeing to). The body of the message should contain
the text "I, <your name>, [representing <your company>] have read the
attached CLA and agree to its terms." Send the email to rob@sixty-north.com
* Push your changes to a topic branch in your fork of the repository.
* Submit a pull request to the repository in the sixty-north organization.
# Additional Resources
* [Individual Contributor License Agreement](https://github.com/sixty-north/segpy/blob/master/docs/legal/segpy-individual-cla.pdf)
* [Entity Contributor License Agreement](https://github.com/sixty-north/segpy/blob/master/docs/legal/segpy-entity-cla.pdf)
* [PEP 8](https://www.python.org/dev/peps/pep-0008/)
* [General GitHub documentation](http://help.github.com/)
* [GitHub pull request documentation](http://help.github.com/send-pull-requests/)
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff