Show More
@@ -5,22 +5,6 b' IPython development guidelines' | |||||
5 | ================================== |
|
5 | ================================== | |
6 |
|
6 | |||
7 | .. contents:: |
|
7 | .. contents:: | |
8 | .. |
|
|||
9 | 1 Overview |
|
|||
10 | 2 Project organization |
|
|||
11 | 2.1 Subpackages |
|
|||
12 | 2.2 Installation and dependencies |
|
|||
13 | 2.3 Specific subpackages |
|
|||
14 | 3 Version control |
|
|||
15 | 4 Documentation |
|
|||
16 | 4.1 Standalone documentation |
|
|||
17 | 4.2 Docstring format |
|
|||
18 | 5 Coding conventions |
|
|||
19 | 5.1 General |
|
|||
20 | 5.2 Naming conventions |
|
|||
21 | 6 Testing |
|
|||
22 | 7 Configuration |
|
|||
23 | .. |
|
|||
24 |
|
8 | |||
25 |
|
9 | |||
26 | Overview |
|
10 | Overview | |
@@ -136,11 +120,56 b' Specific subpackages' | |||||
136 | Version control |
|
120 | Version control | |
137 | =============== |
|
121 | =============== | |
138 |
|
122 | |||
139 |
In the past, IPython development has been done using `Subversion`__. |
|
123 | In the past, IPython development has been done using `Subversion`__. Recently, we made the transition to using `Bazaar`__ and `Launchpad`__. This makes it much easier for people | |
|
124 | to contribute code to IPython. Here is a sketch of how to use Bazaar for IPython | |||
|
125 | development. First, you should install Bazaar. After you have done that, make | |||
|
126 | sure that it is working by getting the latest main branch of IPython:: | |||
|
127 | ||||
|
128 | $ bzr branch lp:ipython | |||
|
129 | ||||
|
130 | Now you can create a new branch for you to do your work in:: | |||
|
131 | ||||
|
132 | $ bzr branch ipython ipython-mybranch | |||
|
133 | ||||
|
134 | The typical work cycle in this branch will be to make changes in `ipython-mybranch` | |||
|
135 | and then commit those changes using the commit command:: | |||
|
136 | ||||
|
137 | $ ...do work in ipython-mybranch... | |||
|
138 | $ bzr ci -m "the commit message goes here" | |||
|
139 | ||||
|
140 | While working with this branch, it is a good idea to merge in changes that have been | |||
|
141 | made upstream in the parent branch. This can be done by doing:: | |||
|
142 | ||||
|
143 | $ bzr pull | |||
|
144 | ||||
|
145 | If this command shows that the branches have diverged, then you should do a merge | |||
|
146 | instead:: | |||
|
147 | ||||
|
148 | $ bzr merge lp:ipython | |||
|
149 | ||||
|
150 | If you want others to be able to see your branch, you can create an account with | |||
|
151 | launchpad and push the branch to your own workspace:: | |||
|
152 | ||||
|
153 | $ bzr push bzr+ssh://<me>@bazaar.launchpad.net/~<me>/+junk/ipython-mybranch | |||
|
154 | ||||
|
155 | Finally, once the work in your branch is done, you can merge your changes back into | |||
|
156 | the `ipython` branch by using merge:: | |||
|
157 | ||||
|
158 | $ cd ipython | |||
|
159 | $ merge ../ipython-mybranch | |||
|
160 | [resolve any conflicts] | |||
|
161 | $ bzr ci -m "Fixing that bug" | |||
|
162 | $ bzr push | |||
|
163 | ||||
|
164 | But this will require you to have write permissions to the `ipython` branch. It you don't | |||
|
165 | you can tell one of the IPython devs about your branch and they can do the merge for you. | |||
|
166 | ||||
|
167 | More information about Bazaar workflows can be found `here`__. | |||
140 |
|
168 | |||
141 | .. __: http://subversion.tigris.org/ |
|
169 | .. __: http://subversion.tigris.org/ | |
142 | .. __: http://bazaar-vcs.org/ |
|
170 | .. __: http://bazaar-vcs.org/ | |
143 | .. __: http://www.launchpad.net/ipython |
|
171 | .. __: http://www.launchpad.net/ipython | |
|
172 | .. __: http://doc.bazaar-vcs.org/bzr.dev/en/user-guide/index.html | |||
144 |
|
173 | |||
145 | Documentation |
|
174 | Documentation | |
146 | ============= |
|
175 | ============= |
General Comments 0
You need to be logged in to leave comments.
Login now