"Stephen J. Turnbull" <turnbull(a)sk.tsukuba.ac.jp> wrote:
ms> But we do. All sorts of CVS history doesn't work on a
branch.
Yeah, it also occurred to me later that besides the history stuff,
status information will be human-unreadable if we get too far away
from HEAD. So I guess we do need a HEAD.
Going off on a slight tangent, I CVS runs more efficiently if you
do development on the main trunk, and not a branch. Internally, CVS
uses RCS, and RCS keeps, in its entirety, the latest version of the main
trunk; all other revisions and branches are kept as deltas from the
latest trunk version. So, to check out from a branch, CVS/RCS checks
out the main trunk, and then applies one or more deltas (usually more,
as RCS has to apply deltas to backtrack to the branch point, and then
apply the branch deltas). This can be a slow process if there are lots
of revisions on a branch (or if the branch occurred a long way from the
current main trunk version). On the other hand, if the main trunk is
where main development occurs, CVS/RCS doesn't have to apply any deltas
(assuming that you want the latest version).
[ Note that the meaning of HEAD appears to have changed from early
versions of CVS. Old versions of CVS used to have HEAD be the latest
version on the main trunk. Current versions of CVS use HEAD to mean
the latest version on the main trunk *OR* a branch -- whatever you're
working on, I believe. ]
--
Darryl Okahata
darrylo(a)soco.agilent.com
DISCLAIMER: this message is the author's personal opinion and does not
constitute the support, opinion, or policy of Agilent Technologies, or
of the little green men that have been following him all day.