[Python-Dev] Looking for VCS usage scenarios
gustavo at niemeyer.net
Thu Nov 6 13:04:55 CET 2008
> > > * Will a DVCS allow simpler operation as if we are still using a
> > > centralized system like CVS or Subversion?
> Yes and no. There is nothing to prevent a formal workflow like that
> in CVS/Subversion. However, the separation of "commit" into "record
> && push to authoritative" leaves open the possibility of annoying
> glitches until you get used to it, and even then it's easy to forget
> to push or to forget that you've committed not-for-pushing stuff, etc,
> etc. In practice it is probably simpler to use a dVCS-specialized
> workflow like "record && push to candidate".
Bazaar offers the same semantic if you want to use it. In practice,
when you use "bzr checkout" to get a branch, it becomes bound to the
remote branch. When you commit to a local bound branch, the change is
automatically pushed to the server, including the needed locking
semantics, so the workflow is pretty much the same as if it were a
Subversion checkout (hence the command name). Branches can be freely
bound and unbound without effort, if desired.
In the team I work on we've been using this for a while for the
"authoritative" branches. So it's a distributed workflow otherwise,
but at the end of the life cycle of a branch, we merge and commit to a
bound branch pretty much like committing a change to Subversion.
More information about the Python-Dev