You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
1.5 KiB
37 lines
1.5 KiB
5 years ago
|
# How to contribute
|
||
|
|
||
|
All patches or feature evolutions are welcome.
|
||
|
|
||
|
## Getting Started
|
||
|
|
||
|
* Make sure you have a [GitHub account](https://github.com/signup/free)
|
||
|
* Submit a ticket for your issue, assuming one does not already exist.
|
||
|
* Clearly describe the issue including steps to reproduce when it is a bug.
|
||
|
* Make sure you fill in the earliest version that you know has the issue.
|
||
|
* Fork the repository on GitHub
|
||
|
|
||
|
## Making Changes
|
||
|
|
||
|
* Create a topic branch from where you want to base your work
|
||
|
(This is usually the master branch on your forked project).
|
||
|
* Make commits of logical units.
|
||
|
* Check for unnecessary whitespace with `git diff --check` before committing.
|
||
|
* The code style of current code base should be preserved
|
||
|
* Make sure you have added the necessary tests for your changes, specially if
|
||
|
you added a new feature.
|
||
|
* Run _all_ the tests to assure nothing else was accidentally broken.
|
||
|
|
||
|
## Submitting Changes
|
||
|
|
||
|
* Push your changes to a topic branch in your fork of the repository.
|
||
|
* Submit a pull request to the repository.
|
||
|
* Make sure that the PR has a clean log message and don't hesitate to squash
|
||
|
and rebase your commits in order to preserve a clean history log.
|
||
|
|
||
|
## Code reviewers
|
||
|
|
||
|
* For small fixes, one can merge PR directly.
|
||
|
* For new features or big change of current code base, at least two
|
||
|
collaborators should LGTM before merging.
|
||
|
* Rebase instead of merge to avoid those "Merge ...." commits, is recommended
|
||
|
(see https://github.com/blog/2141-squash-your-commits)
|