Subject: Re: Some questions about CVS and keeping up-to-date
To: Gary Parker <G.J.Parker@lboro.ac.uk>
From: Robert Elz <kre@munnari.OZ.AU>
List: netbsd-users
Date: 01/21/2005 19:03:26
    Date:        Fri, 21 Jan 2005 11:21:10 -0000
    From:        "Gary Parker" <G.J.Parker@lboro.ac.uk>
    Message-ID:  <20050121112112.D6B9A518C@mail.netbsd.org>

  | 1) As I already have netbsd-2-0-RELEASE checked out will it automagically
  | upgrade me to netbsd-2-0-1-RELEASE if I do 'cvs update' in /usr/src?

No, but you can make it, as ...

  | 2) If that's not the case is there way for me to update other than just
  | deleting the source tree and checking it out again?

You geet to "unset" the tag your system will have set (netbsd-2-0-RELEASE)
(use the -A flag) then checkout (with -r) one of netbsd-2-0-1-RELEASE
netbsd-2-0 or netbsd-2 depending what you want to happen after that (the
first will stick at 2.0.1 only giving you something new if someone decides
they tagged the wrong file, the second will go through 2.0.1 2.0.2
etc as they appear, the third will get you intermediate versions on the
way to 2.1 (and then later, 2.2 probably) - which should include all of
the 2.0.1 2.0.2, ... stuff (but will never be called that, or be exactly
the same as that).   (All this happens on one "cvs update" call).

  | 3) Do updates like this (2.0 -> 2.0.1) get announced anywhere?

Yes.

  | I didn't see
  | anything on the announce list and it was only while having a look in cvsweb
  | that I noticed it was released. Where can I find out what changes have
  | actually been made?

There's a time lag, while the people that build all the different versions
get a chance to make the binaries for distribution, between when the sources
are tagged, and the release is announced.

  | 4) If I can simply update the source from 2.0 to 2.0.1 is it possible to do
  | something like 'make update' that will only recompile the chunks of code
  | that have changed or do I need to do a buildworld for the whole distribution
  | and install it?

You need to do a "build world" (ie: compile everything) at least once.
After that, when updates happen, you will normally be able to just
recompile what has changed (but for that, you have to keep all the .o
files hanging around).   That's likely to work well if you're just
tracking netbsd-2-0 (the 2.0.x versions) - and will probably work for
netbsd-2.   Occasionally however, changes happen in such a way that
the build system needs everything discarded and a rebuild from nothing.
They shouldn't, and really indicate bugs in the Makefiles, but they
do happen, sometimes.

kre