scmproj and colo plugins, problem re colo-push/colo-pull

Alexander Belchenko bialix at ukr.net
Thu Feb 11 08:49:43 GMT 2010


Hi,

I'm using colo plugin for most of my work, and now I've encountered the
problem in the interaction between scmproj and colo. I would like to
tell about this problem here, so developers of nested trees and
colocated branches (if they will become a builtin feature) will be aware
of it.

Background: currently bzr keeps history of each branch separate
(virtually separate in the case of shared repo), so when you push/pull a
branch you only get the revisions which belongs to DAG formed by
mainline history of the branch. So there is not possible to have some
unnamed heads like in monotone or hg. This become a problem if I want to
refer to a revision in colo workspace. If such revision is not in the
current trunk then bzr will fail to operate in some circumstances. I can
pull such revision and get correct branch if it present in colo
workspace, but in most case I can't push it to the standalone branch. At
least I'm not aware of this.

For scmproj I'm still not implemented snapshots support, but even
without it I'm faced with the push problem. If I want to push a scmproj
project I should not accidentally push from feature branch (not trunk)
if my component is colo workspace. I'm still thinking about this problem
and perhaps I should teach my scmproj about colo workspace, but it looks
a bit weird and complicated more than it should.

IIUC, nested trees support will have snapshots support from the day one,
so when you'll be reviewing it, please consider this question.

Your comments are welcome.

Alexander




More information about the bazaar mailing list