[Python-Dev] Looking for VCS usage scenarios (original) (raw)

Thomas Wouters thomas at python.org
Mon Nov 3 23:39:53 CET 2008


On Mon, Nov 3, 2008 at 22:56, Brett Cannon <brett at python.org> wrote:

But then again, having one scenario that shows svn's weakness directly wouldn't hurt. I could see a scenario where I start to fix something in branch A, realize that a deeper issue needs to be fixed, leading to branch B, and then have branch A depend on branch B. Is that possible? Or is injecting branch dependencies like that not workable? If it doesn't work, then a branch A/B that a branch C is dependent on would also work as a scenario (e.g. reworking the testing framework where you are doing a bunch of different things at once that are culminating in a single new testing branch that collects everything).

Here's a real-life Python example: http://bugs.python.org/issue2292. I actually developed that in two separate branches, one depending on the other: one branch for just the changes to functioncalls, to generalize *- and **-unpacking in that context, and one branch to add *- and **-unpacking in other contexts, which was a much more contentious proposal. The division means that the first part can be committed without the second part without any extra effort from anyone. I wouldn't have to undo changes, I wouldn't have to reapply diffs or do a painful manual merge were the first branch to be merged into the trunk. It would be completely straightforward and effortless.

Of course, that's just a small-scale example. I've done much larger of these in the past, but not on Python. You can easily dream up more examples, though: a branch for the gforth generated ceval loop, with separate branches off of that branch with different approaches to the superinstructions. The right one could be picked at a later time, or branches could be merged, or they could all be omitted. The generated ceval loop could be backported to 2.7 without including the superinstructions that were merged into 3.0.

-- Thomas Wouters <thomas at python.org>

Hi! I'm a .signature virus! copy me into your .signature file to help me spread! -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.python.org/pipermail/python-dev/attachments/20081103/caf07f58/attachment.htm>



More information about the Python-Dev mailing list