37 строки
2.3 KiB
Markdown
37 строки
2.3 KiB
Markdown
![](https://az31353.vo.msecnd.net/c04/uxoj.png)
|
|
|
|
# Contributing
|
|
|
|
TouchDevelop is currently accepting contributions in the form of bug fixes, features or design changes.
|
|
|
|
## Contributing bug fixes
|
|
A bug must have an issue tracking it in the issue tracker that has been approved ("Milestone == Community") by the TouchDevelop team. Your pull request should include a link to the bug that you are fixing. If you've submitted a PR for a bug, please post a comment in the bug to avoid duplication of effort.
|
|
|
|
## Contributing features or design changes
|
|
Features or design changes (things that add new or improved functionality to TouchDevelop) may be accepted, but will need to first be approved (marked as "Milestone == Community" by a TouchDevelop coordinator with the message "Approved") in the suggestion issue.
|
|
|
|
## Legal
|
|
|
|
Before we can accept your pull-request you'll need to sign a [Contribution License Agreement (CLA)](http://en.wikipedia.org/wiki/Contributor_License_Agreement).
|
|
You can download ours [here](https://www.codeplex.com/Download?ProjectName=typescript&DownloadId=921298).
|
|
|
|
**However, you don't have to do this up-front. You can simply clone, fork, and submit your pull-request as usual.**
|
|
|
|
When your pull-request is created, we classify it. If the change is trivial, i.e. you just fixed a typo, then the PR is labelled with ``cla-not-required``.
|
|
Otherwise it's classified as ``cla-required``. In that case, the system will also also tell you how you can sign the CLA.
|
|
Once you signed a CLA, the current and all future pull-requests will be labelled as cla-signed.
|
|
|
|
Signing the CLA might sound scary but it's actually super simple and can be done in less than a minute.
|
|
|
|
## Housekeeping
|
|
Your pull request should:
|
|
|
|
* Include a description of what your change intends to do
|
|
* Be a child commit of a reasonably recent commit in the **master** branch
|
|
* Requests need not be a single commit, but should be a linear sequence of commits (i.e. no merge commits in your PR)
|
|
* It is desirable, but not necessary, for the tests to pass at each commit
|
|
* Have clear commit messages
|
|
* e.g. "Refactor feature", "Fix issue", "Add tests for issue"
|
|
* Follow the TypeScript code conventions descriped in [Coding guidlines](https://github.com/Microsoft/TypeScript/wiki/Coding-guidlines)
|
|
* To avoid line ending issues, set `autocrlf = input` and `whitespace = cr-at-eol` in your git configuration
|