home *** CD-ROM | disk | FTP | other *** search
- $Id: README,v 1.3.1.2 91/02/06 18:26:40 berliner Exp $
-
-
- CVS Kit, Version 1.0
-
- Copyright (c) 1989, Brian Berliner
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 1, or (at your option)
- any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
- --------------------------------------------------------------------------
-
- This is the first release of CVS -- Concurrent Version System.
-
- CVS is a freely available collection of programs that provide for software
- release and revision control functions in a UNIX environment. It is
- designed to work on top of the RCS distribution, V4 (uses the V4 branch
- support). CVS does understand how to parse older RCS formats, but cannot
- do any of the fancier features (like vendor branch support) without RCS
- branch support.
-
- The conflict-resolution algorithms and much of the administrative file
- definitions of CVS were based on the original package written by Dick Grune
- at Vrije Universiteit in Amsterdam, and posted to comp.sources.unix in the
- volume 6 release sometime in 1986. This original version was a collection
- of shell scripts.
-
- ! Brian Berliner from Prisma, Inc. (now at Sun Microsystems, Inc.) converted
- ! the original CVS shell scripts into reasonably fast C and added many, many
- ! features to support software release control functions. See the manual
- ! page in the "man" directory. A copy of the USENIX article presented
- ! at the Winter 1990 USENIX Conference, Washington D.C., is included in
- ! the "doc" directory.
-
- This code has been tested extensively on Sun-4 and Sun-3 platforms, all
- running SunOS 4.X. Your mileage may vary for other systems, and I would
- really appreciate hearing back on what was necessary to get this beast
- working on other platforms.
-
- Installation:
-
- 1) Edit the top-level Makefile (in this directory) and set DESTDIR to the
- location of local binaries. Also adjust CFLAGS and LDFLAGS
- appropriately as well. May also need to edit the man/Makefile file to
- be sure that manual pages will be dropped in the correct place for your
- system.
-
- 2) Edit the src/cvs.h header file. Appropriate things to look at may be
- the hard-coded locations of programs like DIFF, GREP, RM, and SORT.
- Also glance at the default values for the environment variables that
- CVS uses, in particular, the RCSBIN variable, which holds the path to
- where the RCS programs live on your system.
-
- 3) make depend
-
- To get the Makefiles to use *your* include dependencies, not mine.
-
- 4) make
-
- This will (hopefully) make the needed CVS binaries within the "src"
- directory.
-
- 5) make install
-
- If all goes well above, install the binaries and manual pages.
- Depending on your instrallation's configuration, you may need to be
- root to do this.
-
- 6) man cvs
-
- Take a look at the CVS manual page to see what it can do for you, and
- if it fits your environment (or can possibly be made to fit your
- environment). If things look good, continue on...
-
- 7) Setup the master source repository. Choose a directory with ample disk
- space available for source files. This is where the RCS ",v" files
- will be stored. Say you choose "/src/master" as the root of your
- source repository. Make the CVSROOT.adm directory in the root of the
- source repository: "mkdir /src/master/CVSROOT.adm". Populate this
- directory with the files from the "examples" directory included with
- this release (loginfo and modules). Edit these files
- (/src/master/CVSROOT.adm/{loginfo,modules}) to reflect your local
- source repository environment -- they may be quite small initially, but
- will grow as sources are added to your source repository. Turn these
- files into RCS controlled files:
-
- cd /src/master/CVSROOT.adm
- ci -m'Initial loginfo file' loginfo
- ci -m'Initial modules file' modules
-
- 8) mkmodules /src/master/CVSROOT.adm
-
- This will build the ndbm(3) file for the modules database. mkmodules
- should have been installed above by the "make install" done in step 5.
- If mkmodules cannot be found, check your PATH or try "rehash".
-
- 9) Have all users of the CVS system set the CVSROOT environment variable
- appropriately to reflect the placement of your source repository. If
- the above example is used, the following commands can be placed in
- user's ~/.login or ~/.profile file:
-
- setenv CVSROOT /src/master
- for csh users, and
- CVSROOT=/src/master; export CVSROOT
- for sh users.
-
- 10) It might be a good idea to jump right in and put the CVS distribution
- directly under CVS control. From within the top-level directory of the
- CVS distribution (the one that contains this README file) do the
- following commands:
-
- mkdir $CVSROOT/cvs
- make clean
- checkin -m 'CVS 1.0 distribution' cvs CVS CVS1_0
-
- 11) Having done step 10, one should be able to checkout a copy of the CVS
- distribution and hack away at the sources with the following command:
-
- cvs checkout cvs
-
- This will make the directory "cvs" in your current directory and
- populate it with the appropriate CVS files and directories.
-
- 12) Remember to edit the modules file manually when sources are checked in
- with "checkin" or "cvs add". A copy of the modules file for editing
- can usually be retrieved with the "cvs checkout modules" command, and
- definitely with the "cvs checkout CVSROOT.adm" command.
-
- 13) PLEASE report any problems to me, berliner@sun.com (Brian Berliner)
- and I will try to collect patches and enhancements into future CVS
- distributions. "patch" format files are best, using context diffs,
- if you will.
-
- 14) GOOD LUCK!
-
- Brian Berliner
- berliner@sun.com
-