Please help Python team decide on a VCS

Vincent Ladeuil v.ladeuil+lp at free.fr
Mon Dec 1 15:06:29 GMT 2008


>>>>> "Adrian" == Adrian Wilkins <adrian.wilkins at gmail.com> writes:

<snip/>

    Adrian> == Patch review ==

    Adrian> # Download the patch file (from bzr send) to workspace
    Adrian> bzr branch http://code.python.org/python/trunk test_patch_branch
    Adrian> cd test_patch_branch
    Adrian> bzr merge ../patch.diff
    Adrian> # resolve any conflicts
    Adrian> bzr commit -m "Merged patch from patch_author"
    Adrian> # Test
    Adrian> # if passed:
    Adrian> bzr push http://code.python.org/python/trunk
    Adrian> # Patch now part of trunk
    Adrian> cd ..
    Adrian> rm -r test_patch_branch


An alternative:

# Download the patch file (from bzr send) to workspace
bzr init test_patch_branch
cd test_patch_branch
bzr pull ../__patch__
# We get the exact same branch as the submitter at this point
# (preserving the history, etc)
# Test
# if passed:
bzr merge http://code.python.org/python/trunk
# resolve any conflicts
bzr commit -m "Merged patch from patch_author"
# Test
# if passed:
bzr push http://code.python.org/python/trunk
# Patch now part of trunk
cd ..
rm -r test_patch_branch

The difference being that you can review the patch and give
feedback or ask for modifications without having to worry about
resolving conflicts *before* it's needed (or just leave the
author solve the conflicts).

And once https://bugs.edge.launchpad.net/bzr/+bug/267781 is fixed
we can even replace:

  bzr init test_patch_branch
  cd test_patch_branch
  bzr pull ../__patch__

by:

  bzr branch __patch__ test_patch_branch 

       Vincent



More information about the bazaar mailing list