xref: /libCEED/CONTRIBUTING.md (revision c704cffffb398cf56756c5b33a00917e8da28b4b)
1*c704cfffSjeremylt# How to Contribute
274e0540eSJed Brown
374e0540eSJed BrownContributions to libCEED are welcome.
474e0540eSJed Brown
574e0540eSJed BrownPlease use a pull request to the appropriate branch ('maint' for
674e0540eSJed Brownbackward-compatible bug fixes for the last stable release, 'master' for
774e0540eSJed Brownnew features and everything else).
874e0540eSJed Brown
974e0540eSJed BrownPlease make your commits well-organized and atomic, using `git rebase
1074e0540eSJed Brown--interactive` as needed.  Open an issue or RFC pull request to discuss
1174e0540eSJed Brownany significant changes before investing time.  Check that the tests
1274e0540eSJed Brownpass using `make prove` or `make test`.  If adding a new feature, please
1374e0540eSJed Brownadd or extend a test so that it is tested.
1474e0540eSJed Brown
1574e0540eSJed BrownWrite commit messages for a reviewer of your pull request and for a
1674e0540eSJed Brownfuture developer (maybe you) that bisects and finds that a bug was
1774e0540eSJed Brownintroduced in your commit.  The assumptions that are clear in your head
1874e0540eSJed Brownright now are likely not.  Give credit where credit is due using tags
1974e0540eSJed Brownsuch as `Reported-by: Helpful User <helpful@example.com>`.  Please use a
2074e0540eSJed Brownreal name and email for your author information (`git config user.name`
2174e0540eSJed Brownand `user.email`).
2274e0540eSJed Brown
2374e0540eSJed BrownPlease avoid "merging from upstream" (like merging 'master' into your
2474e0540eSJed Brownfeature branch) unless there is a specific reason to do so, in which
2574e0540eSJed Browncase you should explain why in the merge commit.
2674e0540eSJed Brown[Rationale](https://lwn.net/Articles/328436/) from
2774e0540eSJed Brown[Junio](https://gitster.livejournal.com/42247.html) and
2874e0540eSJed Brown[Linus](http://yarchive.net/comp/linux/git_merges_from_upstream.html).
2974e0540eSJed Brown
3074e0540eSJed BrownBy submitting a pull request, you are affirming the following.
3174e0540eSJed Brown
3274e0540eSJed Brown## [Developer's Certificate of Origin 1.1](https://developercertificate.org/).
3374e0540eSJed Brown
3474e0540eSJed BrownBy making a contribution to this project, I certify that:
3574e0540eSJed Brown
3674e0540eSJed Brown(a) The contribution was created in whole or in part by me and I
3774e0540eSJed Brown    have the right to submit it under the open source license
3874e0540eSJed Brown    indicated in the file; or
3974e0540eSJed Brown
4074e0540eSJed Brown(b) The contribution is based upon previous work that, to the best
4174e0540eSJed Brown    of my knowledge, is covered under an appropriate open source
4274e0540eSJed Brown    license and I have the right under that license to submit that
4374e0540eSJed Brown    work with modifications, whether created in whole or in part
4474e0540eSJed Brown    by me, under the same open source license (unless I am
4574e0540eSJed Brown    permitted to submit under a different license), as indicated
4674e0540eSJed Brown    in the file; or
4774e0540eSJed Brown
4874e0540eSJed Brown(c) The contribution was provided directly to me by some other
4974e0540eSJed Brown    person who certified (a), (b) or (c) and I have not modified
5074e0540eSJed Brown    it.
5174e0540eSJed Brown
5274e0540eSJed Brown(d) I understand and agree that this project and the contribution
5374e0540eSJed Brown    are public and that a record of the contribution (including all
5474e0540eSJed Brown    personal information I submit with it, including my sign-off) is
5574e0540eSJed Brown    maintained indefinitely and may be redistributed consistent with
5674e0540eSJed Brown    this project or the open source license(s) involved.
5774e0540eSJed Brown
5874e0540eSJed Brown
59