dcvs_config(5) FreeBSD File Formats Manual dcvs_config(5)
NAME
dcvs_config -- the global DCVS configuration file
DESCRIPTION
dcvs_config is the central configuration file for DCVS. It has the fol-
lowing overall syntax:
<dcs_config> ::= ( <range> | <server> | <client> | <collection> )*
<range> ::= range <rid> <int>..<int>
<server> ::= server <sid> <fqdn> <int>
<client> ::= client <cid> <fqdn> <sid>
<collection> ::= collection <id> <repository root> <repository path>
( <sid>(:<rid>)+ )+
end
<rid> ::= <ident>
<sid> ::= <ident>
<cid> ::= <ident>
<fqdn> ::= <ident>[.<ident>]*
You use this syntax to define the following information for all DCVS pro-
grams:
1. The names of all DCVS servers (short ids and fully qualified DNS
names) and the port of each server. A server configuration line
looks like this:
server dcvs1 dcvs1.dcvs-net.de 44555 # comment at line end
2. The names of all DCVS clients (short ids and fully qualified DNS
names) as well as their local server. A client configuration line
looks like this:
client workstation1 ws1.dcvs-net.de dcvs1
3. The ranges that distinguish the lines of development based on the
RCS branch numbers. A typical range definition looks like this:
range base 0..9999
range r1 10000..19999
range r2 20000..29999
range r3 30000..39999
range r4 40000..49999
4. The file collections (CVSup collections and CVS modules) that are
elements of the DCVS repositories. A typical collection declaration
looks like this:
collection libs /usr/dcvs libs
dcvs1:base
dcvs2:r1:base
end
The first token after the collection keyword is the collection id (a
short arbitrary name), followed by the repository path, followed by
the relative collection path inside the repository.
This information is followed by a list of server range definitions
of the form
server-id:range-id[:range-id]*
The first pair defines for which range the named server is authori-
tative, i.e. commit to branches in this range are allowed at that
server. If there are multiple range definitions, these are only used
by the DCVSup server which passes all related deltas on to other
servers.
You will have to define all collections before you can do any DCVS opera-
tions like importing or adding sources, as DCVS refuses to do anything
without a valid collection definition.
ENVIRONMENT
DCVS_CONFIG may be used to override the default location of the
dcvs_config file.
FILES
The dcvs_config file is searched for in the following locations:
/etc/dcvs_config
/etc/dcvs/dcvs_config
/usr/local/etc/dcvs_config
/usr/local/etc/dcvs/dcvs_config
/opt/etc/dcvs_config
/usr/local/dcvs/etc/dcvs_config
/usr/local/etc/cvsup/cvsupd.servers
/usr/etc/cvsup/cvsupd.servers
/opt/etc/cvsup/cvsupd.servers
EXAMPLES
A simple DCVS configuration may look like this:
# A sample DCVS configuration with several ranges, servers,
# and collections
# We start by defining several ranges, each consisting of 10000
# possible revision branch numbers. You usually do not need to
# change this: only add new ranges when you need them for new servers.
range base 0..9999
range r1 10000..19999
range r2 20000..29999
range r3 30000..39999
range r4 40000..49999
# Our simple DCVS network consists of two servers:
server willow willow.tree.org 44555
server ash ash.forest.net 44555
# We also have two clients computers at server willow and one at
# server ash:
client ws1 ws1.tree.org willow
client ws2 ws2.tree.org willow
client ws11 ws11.forest.net ash
# We only distribute one repository, currently consisting of 4
# different collections.
# The main trunk and vendor branch of collections c1, c3, and c4 is on
# willow, ash is responsible for the trunk and import of collection
# c2. Ash generally uses range r1 for its other collections, willow
# uses range r2.
collection c1 /repos/dcvs c1
willow:base
ash:r1
end
collection c2 /repos/dcvs libs/io
willow:r2
ash:base
end
collection c3 /repos/dcvs libs/text
willow:base
ash:r1
end
collection c4 /repos/dcvs libs/list
willow:base
ash:r1
end
# Note that all other DCVSup and DCVS configuration file can be
# generated from this description by cvsupadm.
SEE ALSO
DCVS(7,) dcvs_config(5,) dcvsupd(8,) dcvsup(1,) cvsupadm(1)
August 2, 2005