[Python-Dev] I am now lost - committed, pulled, merged, what is "collapse"?

Hrvoje Niksic hrvoje.niksic at avl.com
Tue Mar 22 09:30:32 CET 2011


On 03/21/2011 05:44 PM, skip at pobox.com wrote:
>
> Thanks for the example, Hrvoje.
>
>      Hrvoje>  This automatic merging often causes people who migrate to a DVCS
>      Hrvoje>  to feel that they have to go through an unnecessary extra step
>      Hrvoje>  in their workflows.  But once you grasp the "hole" in the svn
>      Hrvoje>  workflow, what svn does (and what one used to take for granted)
>      Hrvoje>  tends to become unacceptable, to put it mildly.
>
> In the run-up to a release when there is lots of activity happening, do you
> find yourself in a race with other developers to push your changes cleanly?

I work on a small project in comparison to Python, so this doesn't 
happen to me personally.  But such a race is certain to happen on larger 
projects.  But it doesn't mean that we are helpless to prevent it. 
After all, one of the selling points of DVCS is the ability to support 
different integration workflows.

If you (we) are running into a push race with the other developers over 
the central repository's head, this could indicate that the project is 
large enough that the centralized workflow is no longer the appropriate 
one.  If you are not familiar with other DVCS workflows, take a look at, 
for example, chapter 5 of the "Pro Git" book, which describes the 
alternatives such as integrator-manager and dictator-lieutenant 
workflows: http://progit.org/book/ch5-1.html

Python obviously wouldn't benefit from a strict hierarchy implied by the 
dictator-lieutenants model, but perhaps it could switch to something 
between that and the integrator model for the releases. The release 
manager could act as the dictator (as well as integrator), while the 
core committers would be lieutenants (as well as developers).  Just a 
thought.

Hrvoje


More information about the Python-Dev mailing list