9 | | 1. Create an account on the [http://dev.ibboard.co.uk/repos/ Repository Manager] |
10 | | 1. Go to the project you want to contribute to |
11 | | 1. Hover over "Options" and click "Fork" |
12 | | 1. Give the fork a name and create it |
13 | | 1. Clone the new fork to your development machine |
14 | | 1. Make your changes and commit them locally |
15 | | 1. Push your changes back to your fork |
16 | | 1. Contact IBBoard (or whoever owns the repository you pulled from) to have your changes pulled back into the Master repository |
| 11 | == Sharing diffs/patches == |
| 12 | |
| 13 | The simplest way to contribute a change is with a patch. Most [wiki:Development/GettingStarted/MercurialClients Mercurial clients] should be able to generate a "diff" file (a file containing the differences between two versions of the same files). The exact method varies between clients. |
| 14 | |
| 15 | Once a diff has been generated, either attach it to an existing ticket, or create a new ticket and attach it if no ticket exists yet. Other developers can then download the patch and apply it and use it. |
| 16 | |
| 17 | == Personal forks on dev.ibboard.co.uk == |
| 18 | |
| 19 | With the introduction of the [http://dev.ibboard.co.uk/repos/ Repository Manager], it is now easier to make your own work publicly available without having to get commit permissions on the main repository. This keeps experimentation separate and lowers the bar for entry. |
| 20 | |
| 21 | 1. Create an account on the [http://dev.ibboard.co.uk/repos/ Repository Manager] |
| 22 | 1. Go to the project you want to contribute to |
| 23 | 1. Hover over "Options" and click "Fork" |
| 24 | 1. Give the fork a name and create it |
| 25 | 1. Clone the new fork to your development machine |
| 26 | 1. Make your changes and commit them locally |
| 27 | 1. Push your changes back to your fork |
| 28 | 1. Contact IBBoard (or whoever owns the repository you pulled from) to have your changes pulled back into the Master repository |
| 29 | |
| 30 | == Forks on other sites == |
| 31 | |
| 32 | If you already have an account on another site (e.g. [http://bitbucket.org bitbucket]) then you can also make use of that. Instructions may vary slightly depending on the third-party. |
| 33 | |
| 34 | 1. Find the project(s) you want to contribute to in the [http://dev.ibboard.co.uk/repos/ Repository Manager] |
| 35 | 1. Clone the projects to your development machine |
| 36 | 1. Make your changes and commit them locally |
| 37 | 1. Create a new project (a detached fork) on your third-party host (steps vary) |
| 38 | 1. Push your changes back to your third-party host |
| 39 | 1. Contact IBBoard (or whoever owns the repository you pulled from) to have your changes pulled back into the Master repository, and make sure that they can get access to it |