diff options
author | Dan Handley <dan.handley@arm.com> | 2013-12-02 19:25:12 +0000 |
---|---|---|
committer | Dan Handley <dan.handley@arm.com> | 2013-12-05 11:34:09 +0000 |
commit | ab2d31edbd9dea69bd1ca495e3fce0511c9d42ff (patch) | |
tree | f8b6e77c7c5a4636a292a353395f3c0ecc233dd5 /contributing.md | |
parent | cd29b0a60ca98dafe3904165ff33b06af350255a (diff) |
Enable third party contributions
- Add instructions for contributing to ARM Trusted Firmware.
- Update copyright text in all files to acknowledge contributors.
Change-Id: I9311aac81b00c6c167d2f8c889aea403b84450e5
Diffstat (limited to 'contributing.md')
-rw-r--r-- | contributing.md | 114 |
1 files changed, 114 insertions, 0 deletions
diff --git a/contributing.md b/contributing.md new file mode 100644 index 00000000..2f46d7ea --- /dev/null +++ b/contributing.md @@ -0,0 +1,114 @@ +Contributing to ARM Trusted Firmware +==================================== + +Before you start contributing to this project you must sign the ARM +Contributor License Agreement (CLA). + +Individuals who want to contribute their own work must sign and return an +Individual CLA. Companies that want to contribute must sign and return a +Corporate CLA if their employees' intellectual property has been assigned to +the employer. Copies of the CLAs are available on request from +[cla-submissions@arm.com]. They will be available from http://www.arm.com in +due course. + +For this project, ARM also requires the GitHub account name(s) associated with +each individual contributor or the designated employees of corporate +contributors. Only contributions originating from these accounts will be +considered covered by the CLA. To avoid delay, you should provide the Github +account name(s) at the same time as the signed CLA. + +ARM reserves the right to not accept a contribution. This may be for technical, +commercial or legal reasons. + + +Getting Started +--------------- + +* Make sure you have a [GitHub account]. +* Create an [issue] for your work if one does not already exist. This gives + everyone visibility of whether others are working on something similar. ARM + licensees may contact ARM directly via their partner managers instead if + they prefer. + * For bugs, use the "bug" label in the [issue] and clearly describe the + problem, including steps to reproduce. + * For enhancements, use the "enhancement" label and clearly describe + how you intend to implement the change. + If you intend to include Third Party IP in your contribution, please + raise a separate [issue] for this and ensure that the changes that + include Third Party IP are made on a separate topic branch. +* [Fork][] [arm-trusted-firmware][] on GitHub. +* Clone the fork to your own machine. +* Create a local topic branch based on the [arm-trusted-firmware][] `master` + branch. + + +Making Changes +-------------- + +* Make commits of logical units. See these general [Git guidelines] for + contributing to a project. +* Follow the [Linux coding style]; this style is re-used for the ARM Trusted + Firmware project. +* Keep the commits on topic. If you need to fix another bug or make another + enhancement, please create a separate [issue] and address it on a separate + topic branch. +* Avoid long commit series. If you do have a long series, consider whether + some commits should be squashed together or addressed in a separate topic. +* Make sure your commit messages are in the proper format. If a commit fixes + a GitHub [issue], include a reference (e.g. "fixes #45"); this ensures + the [issue] is [automatically closed] when merged into the + [arm-trusted-firmware] `master` branch. +* Where appropriate, please update the documentation. + * Consider whether the [User Guide] or [Porting Guide] need updating. + * Changes that have a material impact on behavior or programming + interfaces should have an entry at the end of the "[Detailed changes + since last release]" section of the [Change Log]. Minor changes (e.g. + basic refactoring or typo fixes) do not need an entry. + * If this is your first contribution, you may add your name or your + company name to the [Acknowledgements] file. + * For topics with multiple commits, you should make all documentation + changes (and nothing else) in the last commit of the series. Otherwise, + include the documentation changes within the single commit. +* Please test your changes. As a minimum, ensure UEFI boots to the shell on + the Foundation FVP. See the "[Running the software]" section of the + [User Guide] for more information. + + +Submitting Changes +------------------ + +* Ensure we have your signed CLA. +* Push your local changes to your fork of the repository. +* Submit a [pull request] to arm-trusted-firmware. + * The changes in the pull request will then undergo further review and + testing. Any review comments will be made as comments on the [pull + request]. This may require you to do some rework. +* When the changes are accepted, ARM will integrate them. + * To ensure a linear commit history, ARM will typically rebase the commits + locally before merging to the [arm-trusted-firmware] `master` branch. In + this case, the [pull request] will be closed rather than directly merged + on GitHub. If the rebase is not trivial, you may be asked to rebase the + commits yourself. + + +- - - - - - - - - - - - - - - - - - - - - - - - - - + +_Copyright (c) 2013, ARM Limited and Contributors. All rights reserved._ + + +[Change Log]: ./docs/change-log.md +[Detailed changes since last release]: ./docs/change-log.md#detailed-changes-since-last-release +[User Guide]: ./docs/user-guide.md +[Running the software]: ./docs/user-guide.md#running-the-software +[Porting Guide]: ./docs/porting-guide.md +[Acknowledgements]: ./acknowledgements.md "Contributor acknowledgements" + +[cla-submissions@arm.com]: mailto:cla-submissions@arm.com +[GitHub account]: http://github.com/signup/free +[Fork]: http://help.github.com/articles/fork-a-repo +[issue]: http://github.com/ARM-software/arm-trusted-firmware/issues +[pull request]: http://help.github.com/articles/using-pull-requests +[automatically closed]: https://help.github.com/articles/closing-issues-via-commit-messages +[Git guidelines]: http://git-scm.com/book/ch5-2.html +[Linux coding style]: https://www.kernel.org/doc/Documentation/CodingStyle +[arm-trusted-firmware]: https://github.com/ARM-software/arm-trusted-firmware |