Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 86 lines (62 sloc) 3.656 kb
885f47c @willdurand Import new Propel documentation
willdurand authored
1 ---
2 layout: default
3 title: How To Contribute ?
4 ---
5
6 # How To Contribute ? #
7
8 You can easily contribute to the Propel project since all projects are hosted by [GitHub](https://github.com).
9 You just have to _fork_ the Propel2 project on the [PropelORM organization](https://github.com/propelorm) and
10 to provide Pull Requests or to submit issues. Note, we are using [Git](http://git-scm.com) as main Source Code Management.
11
12 The Propel organization maintains five projects:
13
14 * [Propel2](https://github.com/propelorm/Propel2) : the main version.
15 * [Propel](https://github.com/propelorm/Propel) : the previous major release of Propel.
16 * [PropelBundle](https://github.com/propelorm/PropelBundle) : a bundle to integrate Propel with [Symfony2](http://www.symfony.com).
17 * [sfPropelORMPlugin](https://github.com/propelorm/sfPropelORMPlugin) : a plugin to integrate Propel 1.x with [symfony 1.x](http://www.symfony-project.org);
18 * [propelorm.github.com](https://github.com/propelorm/propelorm.github.com) : the Propel documentation (aka this website).
19
20 ## Submit an issue ##
21
22 The ticketing system is also hosted on GitHub:
23
24 * Propel 2: [https://github.com/propelorm/Propel2/issues](https://github.com/propelorm/Propel2/issues)
25 * Propel (1.x): [https://github.com/propelorm/Propel/issues](https://github.com/propelorm/Propel/issues)
26 * PropelBundle: [https://github.com/propelorm/PropelBundle/issues](https://github.com/propelorm/PropelBundle/issues)
27 * sfPropelORMPlugin: [https://github.com/propelorm/sfPropelORMPlugin/issues](https://github.com/propelorm/sfPropelORMPlugin/issues)
28
29 ## Make a Pull Request ##
30
31 The best way to submit a patch is to [make a Pull Request on GitHub](https://help.github.com/articles/creating-a-pull-request).
32 First, you should create a new branch from the `master`.
33 Assuming you are in your local Propel project:
34
35 ```bash
6344219 @lunika fix argument for the checkout command
lunika authored
36 $ git checkout -b fix-my-patch master
885f47c @willdurand Import new Propel documentation
willdurand authored
37 ```
38
39 Now you can write your patch in this branch. Don't forget to provide unit tests
40 with your fix to prove both the bug and the patch. It will ease the process to
41 accept or refuse a Pull Request.
42
43 When you're done, you have to rebase your branch to provide a clean and safe Pull
44 Request.
45
46 ```bash
47 $ git remote add upstream https://github.com/propelorm/Propel2
48 $ git checkout master
49 $ git pull --ff-only upstream master
50 $ git checkout fix-my-patch
51 $ git rebase master
52 ```
53
54 In this example, the `upstream` remote is the PropelORM organization repository.
55
56 Once done, you can submit the Pull Request by pushing your branch to your fork:
57
58 ```bash
59 $ git push origin fix-my-patch
60 ```
61
62 Go to your fork of the project on GitHub and switch to the patched branch (here
63 in the above example, `fix-my-patch`) and click on the "Compare and pull request"
64 button. Add a short description to this Pull Request and submit it.
65
66 ## Running Unit Tests ##
67
97ab09d @robin850 Nail-care for previous commits and fix some nit-picks
robin850 authored
68 Please make sure our test suite is still green and you wrote an adequate test that
69 covers your changes.
70
1395c56 @marcj Fixed #286 - Added cookbook article about the new test suite.
marcj authored
71 You can get more information in our cookbook article: [Working with Propel's Test Suite](/documentation/cookbook/working-with-test-suite.html).
885f47c @willdurand Import new Propel documentation
willdurand authored
72
73 ## Improve the documentation ##
74
75 The Propel documentation is written in [Markdown][] syntax and runs through
76 [GitHub Pages][]. Everybody can contribute to the documentation by forking the
77 [propelorm.github.com][] project and to submit Pull Requests. Please, try to
78 wrap your additions around 80 characters.
79
80 [Composer]: http://getcomposer.org/
81 [php-cs-fixer]: http://cs.sensiolabs.org/
82 [Markdown]: http://daringfireball.net/projects/markdown/
83 [propelorm.github.com]: https://github.com/propelorm/propelorm.github.com
84 [GitHub Pages]: http://pages.github.com/
85 [PHPUnit]: http://www.phpunit.de
Something went wrong with that request. Please try again.