How to contribute to this project

The easiest way to contribute to LCSK is by submitting a patch. Since the project uses Git as the SCM, you can create a clone of the repository and apply what you would like to contribute and submit a patch when you want us to review the changes.

Working on a patch

When working on a patch, your local enlistment should in most cases be synchronized to the latest check-in in the master branch. Working on the dev branch would only expose you to nasty things (like the application breaking all the time).

Please only fix one issue per patch: if one fix is rejected and the other accepted, it would be more difficult for us to integrate the accepted fix and we might have to reject the whole patch and ask you to resubmit. One fix per patch also makes the source tree's history cleaner and more readable.

Submitting a patch as a fork

If you go to the source code tab of the project, you'll see links on the top of the page to manage and create forks. Each fork is a copy of the full source code repository that you own entirely.

You can create a new fork by clicking "Create fork". You can then enter a name for your fork, typically the name of the feature you want to work on or a bug number if you're patching a bug. The description is optional.

Once you've hit save, you'll see a view of the forks that you own. Each of them has its own clone URL. What you want to do next is clone that remote CodePlex repository to your local machine in order to be able to start working.

Once you've made your changes and are ready to submit them back to us, use the 'git commit -m "Comment the changes"' command. The patch has not yet been submitted to CodePlex.

Next, you'll want to push your changes to your private fork on CodePlex through 'git push origin master' command.

Before preparing to submit a contribution, be sure to:
  1. Mark new files as added
  2. Mark missing files as deleted
  3. Use 'git add .' to ensure the local copy is current
  4. Verify sources build
  5. Do any merge and re-base operations necessary to get your local change tree to what you actually want to submit (see Git documentation if in doubt about what this means). In particular, before you submit, your enlistment should be merged into master.

Once this is done, your changes are on CodePlex, but not yet in the project's official repository. To get it there, you'll need to ask us to pull the changes in. In order to do that, send us a pull request from the fork management screen under the source control tab on CodePlex:

You will receive an e-mail update from us when your patch submission has been evaluated and applied.

Last edited Apr 3, 2012 at 11:42 PM by dstpierre, version 2