##// END OF EJS Templates
Updating development.txt with a short description of a typical IPython development workflow using...
Brian E Granger -
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`__. We are currently trying out `Bazaar`__ and `Launchpad`__.
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