Browse files

Merge branch 'maint'

  • Loading branch information...
2 parents 653caed + bd4e9b9 commit 5ed79cb12033a2606ebaea18123e8996f19690ed @sigma sigma committed Sep 23, 2012
Showing with 40 additions and 0 deletions.
  1. +40 −0
@@ -0,0 +1,40 @@
+# How to contribute
+Contributions to Magit are highly welcome. Here are a few guidelines that will
+help your patches hit upstream as soon as possible.
+## Branching scheme
+Magit uses 3 main branches for its lifecyle: `maint`, `master` and `next`.
+* `maint` contains the set of patches that will definitely make it into the next
+ minor release.
+* `master` contains the set of patches that will highly likely make it into the
+ next major release.
+* `next` contains patches that necessitate some additional checks/improvements
+ before they're integrating into a release.
+## Making changes
+A good practice is to create a topic branch off Magit, from the branch you
+target for *final* inclusion. This should *always* be either `maint` or
+If you branch off `next`, you'll only put more overhead on the maintainer's
+shoulders, and the integration will suffer from additional delays.
+Please make sure your commits are well-organized and "atomic" (hitting a single
+well-defined target each).
+Please also make sure you check that byte-compilation completes without errors
+of warnings, and that tests run without failures.
+Bonus points if you add tests to cover the feature you're hacking.
+## Submitting changes
+The preferred way of submitting your changes is to open a pull request on the
+central Magit GitHub repository (
+Alternately, you can send your patches to the Magit mailing list
+(, using `git send-email`.

0 comments on commit 5ed79cb

Please sign in to comment.