On 06/01/2011 12:38 PM, Matthew Brett wrote:
> Hi,
>
> On Wed, Jun 1, 2011 at 12:58 PM, Eric Firing<efir...@hawaii.edu>  wrote:
>>> The current practice worked very nicely with SVN (IMHO), and I think it
>>
>> (I recall that Mike had to rescue us more than once from svnmerge
>> confusions, at least during the earlier days.)
>
> I was just idly looking at the matplotlib network graph:
>
> https://github.com/matplotlib/matplotlib/network
>
> There seem to be lots of branches and cross merges ; the history of
> 1.0.x is extremely confusing.

Agreed!

>
> I wonder whether it would be worthwhile to review git workflow?

Yes.

>
> I like Pauli's edits to the numpy gitwash docs in numpy for this.
> I've actually just merged these back into the gitwash main docs,
> example build here:

I will have to take a look; mpl did pull some version of gitwash into 
its doc build.

>
> http://matthew-brett.github.com/pydagogue/gitwash/git_development.html

Thanks, I will take a look.

>
> Maybe the overall point is that git does require some thought to
> history, and some rules-of-work, to avoid confusion.

I think one of the problems is that documentation such as the Git book 
and at least early versions of gitwash, if I remember correctly, 
emphasize workflow for people who do not access the central repo 
directly.  There has been much discussion on the lists of procedure for 
those who do push to central repos, but I am not sure to what extent it 
has gotten condensed down into a sufficiently simple set of rules and 
examples in the standard documentation.  Maybe you and Pauli have done 
that now.


>
> I've been managing a maintenance branch for my much smaller nibabel
> project without much trouble; I've just been doing the occasional
> cherry-pick and rebase from trunk for bugfixes.

In a way, this illustrates the difficulty: you describe a procedure for 
working with a maintenance branch that is completely different from the 
one we have been using (apart from the errors). What we have been doing 
is initiating bug fixes in the maintenance branch and then merging that 
branch to master.  I'm sure either way can work fine, if one doesn't 
make mistakes.  I'm not sure what the relative merits of the two methods 
are, in terms of simplicity, clarity, and robustness against errors. I 
think they result in very different graphs, correct?  With your 
approach, the maintenance branch and master are separate lines, while 
with our approach, the merges keep pulling the branches together in the 
graph, even though their contents are steadily getting farther apart.

Eric

>
> Cheers,
>
> Matthew

------------------------------------------------------------------------------
Simplify data backup and recovery for your virtual environment with vRanger. 
Installation's a snap, and flexible recovery options mean your data is safe,
secure and there when you need it. Data protection magic?
Nope - It's vRanger. Get your free trial download today. 
http://p.sf.net/sfu/quest-sfdev2dev
_______________________________________________
Matplotlib-devel mailing list
Matplotlib-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel

Reply via email to