                                                                   -*- text -*-
Aside from the standard Debian modifications of paths, default
editors, and such, this package contains the following
modifications:

BSD CVS_LOCAL_BRANCH_NUM
~~~~~~~~~~~~~~~~~~~~~~~~

This package has the CVS_LOCAL_BRANCH_NUM patch from FreeBSD:
http://www.freebsd.org/cgi/cvsweb.cgi/src/contrib/cvs/src/rcs.c.diff?r1=1.1&r2=1.2
A description gotten from
http://www.polstra.com/projects/freeware/CVSup/faq.html#revconflicts: 

: If your local revisions are on their own branch, then the problem is
: reduced to ensuring that your branch has a unique revision number
: which will never be duplicated in the master repository.  The
: easiest way to accomplish this is to modify CVS.  The version of CVS
: released with FreeBSD includes such a modification.  In that
: version, you can influence the revision numbers of branches by
: setting the environment variable CVS_LOCAL_BRANCH_NUM.  This
: variable should be set to an integer value, and CVS will use that as
: the starting point when choosing revision numbers for new branches.
: By default, CVS allocates branch numbers starting with 1.  So a high
: value such as 1000 makes a good choice.  New branches at the master
: site will receive low revision numbers, while your own local
: branches will receive high revision numbers.  Thus the two won't
: conflict.

Pserver Patch
~~~~~~~~~~~~~

This package has a patch for pserver that fixes the problem that
pserver wanted to read /root/.cvsignore. The problem is that the
HOME environment variable is set, and it overrides the uid based
password lookup. What we do now is drop the cached home directory
if the uid has changed.

-- Wichert Akkerman <wakkerma@debian.org>, Sun Dec 19 15:50:48 CET 1999

Control of Keyword Expansion
~~~~~~~~~~~~~~~~~~~~~~~~~~~~

I've copied support for this via CVSROOT/options from FreeBSD.
The options file can include tag and tagexpand directives. The
tag directive defines a local keyword (if you've ever seen
$FreeBSD in a file, now you know what it is. So when do we start
seeing $Debian? :) and the tagexpand directive defines which
keywords (if any) should be expanded.

This is more useful than using the normal -k options to control
keyword expansion because you can simply turn off all expansion
except for your local keyword. This is in fact what the FreeBSD
project does.

The tag directive looks like

tag=<NEWKEYWORD>=<KEYWORD>

where <NEWKEYWORD> is your new local keyword and <KEYWORD> is the
standard keyword it mimics (one of Author, Date, CVSHeader,
Header, Id, Locker, Log, Name, RCSfile, Revision, Source, or
State) CVSHeader (a better Id which also shows the file's
location in the repository) is the most common choice; support
for it was also added by this patch.

The tagexpand directive looks like

tagexpand=<INCLUDE><KEYWORDS>

where <INCLUDE> is either i (if you will be listing the keywords
to expand) or e (if you will be listing the keywords not to
expand) and <KEYWORDS> is a comma-separated list of keywords to
include or exclude. In the absence of a tagexpand directive, all
keywords are expanded according to the normal rules.

tagexpand=iDate,iDebian

The following example tells CVS to create a new $Foo keyword
which looks like $CVSHeader and to expand only the $Date and $Foo
keywords.

tag=Foo=CVSHeader
tagexpand=iFoo,Date

 -- Tollef Fog Heen <tfheen@debian.org>  Mon,  8 Apr 2002 12:33:01 +0200
