Michael Merickel
2016-04-16 1eea18ab7f1428ba8ac01a238f03ddbf8483593b
commit | author | age
3a8c85 1 Contributing
SP 2 ============
3
4 All projects under the Pylons Projects, including this one, follow the
5 guidelines established at [How to
44d930 6 Contribute](http://www.pylonsproject.org/community/how-to-contribute) and
SP 7 [Coding Style and
8 Standards](http://docs.pylonsproject.org/en/latest/community/codestyle.html).
3a8c85 9
SP 10 You can contribute to this project in several ways.
11
12 * [File an Issue on GitHub](https://github.com/Pylons/pyramid/issues)
13 * Fork this project and create a branch with your suggested change. When ready,
14   submit a pull request for consideration. [GitHub
15   Flow](https://guides.github.com/introduction/flow/index.html) describes the
16   workflow process and why it's a good practice. When submitting a pull
17   request, sign
44d930 18   [CONTRIBUTORS.txt](https://github.com/Pylons/pyramid/blob/master/CONTRIBUTORS.txt)
3a8c85 19   if you have not yet done so.
SP 20 * Join the IRC channel #pyramid on irc.freenode.net.
44d930 21
SP 22 Git Branches
23 ------------
24 Git branches and their purpose and status at the time of this writing are
25 listed below.
26
27 * [master](https://github.com/Pylons/pyramid/) - The branch on which further
28 development takes place. The default branch on GitHub.
1eea18 29 * [1.7-branch](https://github.com/Pylons/pyramid/tree/1.7-branch) - The branch
MM 30 classified as alpha. Actively maintained.
44d930 31 * [1.6-branch](https://github.com/Pylons/pyramid/tree/1.6-branch) - The branch
8be4c4 32 classified as "stable" or "latest". Actively maintained.
SP 33 * [1.5-branch](https://github.com/Pylons/pyramid/tree/1.5-branch) - The oldest
44d930 34 actively maintained and stable branch.
SP 35
36 Older branches are not actively maintained. In general, two stable branches and
37 one or two development branches are actively maintained.
3a8c85 38
SP 39 Prerequisites
40 -------------
41
42 Follow the instructions in HACKING.txt for your version or branch located in
43 the [root of the Pyramid repository](https://github.com/Pylons/pyramid/) to
44 install Pyramid and the tools needed to run its tests and build its
45 documentation.
46
47 Building documentation for a Pylons Project project
48 ---------------------------------------------------
49
50 *Note:* These instructions might not work for Windows users. Suggestions to
51 improve the process for Windows users are welcome by submitting an issue or a
52 pull request. Windows users may find it helpful to follow the guide [Installing
53 Pyramid on a Windows
54 System](http://docs.pylonsproject.org/projects/pyramid/en/latest/narr/install.html#installing-pyramid-on-a-windows-system).
55
56 1.  Fork the repo on GitHub by clicking the [Fork] button.
57 2.  Clone your fork into a workspace on your local machine.
58
44d930 59          git clone git@github.com:<username>/pyramid.git
3a8c85 60
SP 61 3.  Add a git remote "upstream" for the cloned fork.
62
63          git remote add upstream git@github.com:Pylons/pyramid.git
64
65 4.  Set an environment variable as instructed in the
66     [prerequisites](https://github.com/Pylons/pyramid/blob/master/HACKING.txt#L55-L58).
67
68          # Mac and Linux
69          $ export VENV=~/hack-on-pyramid/env
70
71          # Windows
72          set VENV=c:\hack-on-pyramid\env
73
74 5.  Try to build the docs in your workspace.
75
76          # Mac and Linux
77          $ make clean html SPHINXBUILD=$VENV/bin/sphinx-build
78
79          # Windows
80          c:\> make clean html SPHINXBUILD=%VENV%\bin\sphinx-build
81
82      If successful, then you can make changes to the documentation. You can
83      load the built documentation in the `/_build/html/` directory in a web
84      browser.
85
44d930 86 6.  From this point forward, follow the typical [git
SP 87     workflow](https://help.github.com/articles/what-is-a-good-git-workflow/).
88     Start by pulling from the upstream to get the most current changes.
3a8c85 89
SP 90          git pull upstream master
91
92 7.  Make a branch, make changes to the docs, and rebuild them as indicated in
93     step 5.  To speed up the build process, you can omit `clean` from the above
94     command to rebuild only those pages that depend on the files you have
95     changed.
96
97 8.  Once you are satisfied with your changes and the documentation builds
98     successfully without errors or warnings, then git commit and push them to
99     your "origin" repository on GitHub.
100
101          git commit -m "commit message"
102          git push -u origin --all # first time only, subsequent can be just 'git push'.
103
104 9.  Create a [pull request](https://help.github.com/articles/using-pull-requests/).
105
106 10.  Repeat the process starting from Step 6.