[IPython-dev] how to contribute to ipython

Brian Granger ellisonbg.net at gmail.com
Thu Jul 16 00:10:30 EDT 2009

> Many thanks. So here is what I did. I registered a branch set_trace, then I
> did:
> $ bzr launchpad-login ondrej-certik
> and setup my ssh keys. Then I did:
> $ bzr push lp:~ipython-dev/ipython/set_trace
> bzr: ERROR: Target directory lp:~ipython-dev/ipython/set_trace already
> exists, but does not have a valid .bzr directory. Supply
> --use-existing-dir to push there anyway.
> so I tried the --use-existing-dir options, is that the correct way?

You can just push without registering the branch ahead of time.  Then you
don't have to use the --use-existing-dir flag.  Basically a push of a new
branch to lp does the registration for you.

> $ bzr push --use-existing-dir  lp:~ipython-dev/ipython/set_trace
> Using default stacking branch /~ipython-dev/ipython/trunk at
> bzr+ssh://bazaar.launchpad.net/%7Eipython-dev/ipython/
> Created new branch.
> then I went to the web address of the branch:
> https://code.edge.launchpad.net/~ipython-dev/ipython/set_trace<https://code.edge.launchpad.net/%7Eipython-dev/ipython/set_trace>
> and clicked "Propose for merging into another branch":
> https://code.edge.launchpad.net/~ipython-dev/ipython/set_trace/+merge/8855<https://code.edge.launchpad.net/%7Eipython-dev/ipython/set_trace/+merge/8855>
> let me know if I did things correctly.

Yep, I got the email with the merge request.  Fernando is about to begin
working on the 0.10 release and this might make it in for that.  Otherwise,
we will target it for 0.11.

> If I want to checkout the trunk branch instead (e.g. without my
> commit), how do I do that? E.g. the equivalent of:
> git checkout master
> git checkout my_branch
> looking here:
> http://www.taoeffect.com/blog/2009/06/using-bazaar-like-git-repoalias-plugin/
> it's seems pretty complex. I am new to bzr, so I might be doing things
> the wrong way.

This does look complicated.  The way we are using bzr on a daily basis is
quite different from the typicaly git workflow and much simpler.  With your
adoration of git, you probably won't like it ;-)  To get the ipython trunk

$ mkdir code
$ cd code
$ bzr branch lp:ipython

This will create a new, independent "ipython" directory within "code" that
will only have that branch.  To also get your branch do:

$ cd code
$ bzr branch lp:~ipython-div/ipython/set_trace
$ ls

To merge upstream ipython into set_trace:

$ cd code/set_trace
$ bzr merge ../ipython

To merge the updated set_trace into trunk do:

$ cd code/ipython
$ bzr merge ../set_trace

BUT, you want to make sure you merge all upstream changes from trunk into
set_trace first.

Notice, everything in our workflow is based upon the assumption that
branch=directory, which is very different from git's repo=multiple
branches=directory model.

Anyways, thank for the code.



> Ondrej
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/ipython-dev/attachments/20090715/f6cf3125/attachment.html>

More information about the IPython-dev mailing list