Portal:Contribute

From MNE-CPP Wiki
Jump to: navigation, search

This portal features information on how the code contribution process works in the MNE-CPP project.

The MNE-CPP Contribution Cycle

How to contribute your code

This guide will show you how to contribute your own code to the MNE-CPP project:

  1. If you have not already done so, fork the repository to your own Git Hub repository (see step 1 of the getting the MNE-CPP source code guide).
  2. If you have not already done so, clone your remote (forked Git Hub) repository to your local machine (see step 3 of the getting the MNE-CPP source code guide).
  3. Make your changes to the code (please follow the coding conventions) and do a commit (please follow the commit policy).
  4. Push your changes to your remote (forked Git Hub) repository.
  5. Go to your remote (forked Git Hub) repository via the GitHub website and create a pull request:
    1. Right next to the branch selection tool, look for the New pull request button and click it.
    2. The Compare Changes page will appear.
    3. Select the appropriate base and compare branch . The base branch is the branch of the repository you want to merge your changes to (by default the base branch is a branch of the repository you forked from). The compare branch is the branch where you implemented the new feature(s), bugfix(es), etc.
    4. Name the pull reqest, describe your changes and hit Create pull request button.
  6. After you created the pull request, wait for the peer review process to be finished:
    1. Two MNE-CPP developers will review your code.
    2. Please change your code on your local machine based on the comments made by the reviewers. Note: There is no need to create a new pull request for every new change you make to your code. Just commit the changes and push your code to your remote (forked Git Hub) repository. The changes will automatically be added to your already created pull request.
    3. As soon as your code suits all of the MNE-CPP coding conventions and possible inconsistencies were dealt with, your code will be merged into the main MNE-CPP repository.
  7. Congratulations! You are now an official contributor to the MNE-CPP project. Keep up the good work!