[ros-kernel] New development model
KJK::Hyperion
noog at libero.it
Thu Mar 18 18:02:37 CET 2004
>Making changes
>--------------
[...]
This is the part I don't understand a lot. And what I do understand looks
very complicated to me. Let me see: what we currently do on HEAD, in this
model should be done on a branch, right? And before changes are allowed
into the trunk, they must first be moved to the equivalent check-in branch,
yes? How is this done by the developer, in practice? can we have a test
server? because it's quite a jump
Another question: are branches supposed to be permanent (e.g. "GUI",
"Networking", etc.) or volatile? because if they were permanent they could
be associated to mailing lists, so all developers interested in the branch
would get messages on commits, regressions, etc. in said branch
> A) Commits are serialized. No other commits are allowed during the time
> it takes for the continuous integration system to checkout, build, run
> tests and revert a change or merge it to a stable branch. This solution
> does not scale very well and may frustrate developers.
wouldn't more granularity in defining branches fix this?
>All further commits that will modify one or more read-only files or
>directories will be aborted and the developer will have to commit his
>change later when the continuous integration system has finished
>processing the previous change.
couldn't the system parallelize integration of unrelated (i.e. applying to
disjoint sets of files) changes and serialize the others? I can also see a
web-based (or RPC-based, as IIRC Subversion is based on SOAP) interface
with informations about the wait queue for the test queue as an useful
addition to monitor the progress of check-ins (and maybe cancel them too)
in real time
More information about the Ros-kernel
mailing list