Version 5 (modified by ibboard, 8 years ago) (diff)

--

Contributing

There are three main methods for sharing your contributions so that they can become part of the main WarFoundry program:

  1. Create a diff of your changes and share it
  2. Create a "fork" on dev.ibboard.co.uk and contribute there
  3. Create a "fork" on your own site

Due to the nature of the project and distributed version control, once you've made your contribution then people can easily get the contribution.

Sharing diffs/patches

The simplest way to contribute a change is with a patch. Most 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.

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.

Personal forks on dev.ibboard.co.uk

With the introduction of the 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.

  1. Create an account on the Repository Manager
  2. Go to the project you want to contribute to
  3. Fork the project
    1. Hover over "Options" and click "Fork"
    2. Give the fork a name and create it
  4. Clone the new fork to your development machine
  5. Make your changes and commit them locally
  6. Push your changes back to your fork
  7. Contact IBBoard (or whoever owns the repository you pulled from) to have your changes pulled back into the Master repository

Forks on other sites

If you already have an account on another site (e.g. bitbucket) then you can also make use of that. Instructions may vary slightly depending on the third-party.

  1. Create an account on your third-party service, or have the details to hand
  2. Go to the project(s) you want to contribute to in the Repository Manager
  3. Clone the projects to your development machine
  4. Fork the project
    1. Create a new project (a detached fork) on your third-party host (steps vary)
    2. Push the code to your third-party host
  5. Make your changes and commit them locally
  6. Push your changes back to your fork
  7. 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