# How to contribute For the details on the Records Management project see [here](https://community.alfresco.com/docs/DOC-6387-project-overview-records-management). ## Getting started What you need to get started: * A [GitHub](https://github.com/) account. Useful but not necessary: * An [Alfresco community](https://community.alfresco.com/) account - this is a good place to ask questions and find answers. * A [Jira](https://issues.alfresco.com/jira/projects/RM/issues/?filter=allopenissues) account - Good place to look at what the team is working on; ## Making changes We use GitHub's issues to track community contributions and issues. If you are committing a fix for a raised issue please reference the issue number in the pull request. If you are adding in a new feature or bug fix please raise an issue in the issues tab. By raising an issue in this project you will be agreeing to the Alfresco Contribution Agreement which can be found [here](https://community.alfresco.com/docs/DOC-7070-alfresco-contribution-agreement). When you are ready to make a change you just need to fork the [records-management](https://github.com/Alfresco/records-management) repository and then make your changes into your copy of the code. We have a set of standards we follow when writing code. These can be found [here](https://community.alfresco.com/docs/DOC-4658-coding-standards). When formatting your change please try not to change the format of any other code as this can make the changes difficult to spot and please make sure to use the correct line ending (we use LF). We ask that when adding/changing code you also add/change the appropriate unit tests and that these tests all run before creating the pull request (these will be run as part of the request, it just saves time if you know they will pass beforehand). If you are adding any user facing strings be advised these may be change after being reviewed by a member of our UA team. For UI consistency please write to these [guidelines](http://docs.alfresco.com/sites/docs.alfresco.com/files/public/docs_team/u2/Alfresco-Writing-Guide.pdf). ## Submitting changes When you create a pull request we will run the unit tests using [Travis](https://travis-ci.org/Alfresco/records-management). If these pass a member of the team will look over the change and then assuming there are no issues will accept your change. If there are any issue we will discuss this with you using the pull request. It really helps speed up the review process if you include a description of the change in the pull request. After your change has been accepted you can add it to the page [here](https://community.alfresco.com/docs/DOC-5279-featured-contributions) to let other members of the community know. A community account is required to update this page. Occasionally we may have to revert a change after it has been accepted. This will usually be caused by failing integration or UI tests. If this happens to you then feel free to get in touch for more information. ## Additional info and links [Alfresco coding standards](https://community.alfresco.com/docs/DOC-4658-coding-standards) [Alfresco community contributions page](https://community.alfresco.com/docs/DOC-5279-featured-contributions) [Alfresco community site](https://community.alfresco.com/) [Alfresco contribution agreement](https://community.alfresco.com/docs/DOC-7070-alfresco-contribution-agreement) [Alfresco writing guidelines](http://docs.alfresco.com/sites/docs.alfresco.com/files/public/docs_team/u2/Alfresco-Writing-Guide.pdf) [GitHub "Records Management" code repository](https://github.com/Alfresco/records-management) [IDE settings for Eclipse and Intellij](https://github.com/Alfresco/records-management/tree/master/ide-config) [Jira project used by GS team](https://issues.alfresco.com/jira/projects/RM/issues) [Records Management project details](https://community.alfresco.com/docs/DOC-6387-project-overview-records-management)