=================================================================== RCS file: /cvsrepo/anoncvs/cvs/www/Attic/cvsync.html,v retrieving revision 1.137 retrieving revision 1.138 diff -c -r1.137 -r1.138 *** www/Attic/cvsync.html 2017/06/26 17:18:57 1.137 --- www/Attic/cvsync.html 2017/10/23 10:14:17 1.138 *************** *** 19,84 ****

OpenBSD ! CVSync


!

What Is CVSync?

- CVSync is a software package for distributing and updating source - trees from a master cvs(1) - repository on a remote server host. - The OpenBSD sources are maintained in a CVS repository on a central - development machine in Canada. - With CVSync, OpenBSD users can easily keep their own source trees up to date. -

! CVSync uses the so-called pull model of updating. Under the pull ! model, each client asks the server for updates, if and when they are ! wanted. The server waits passively for update requests from its clients. ! Thus all updates are instigated by the client. The server never sends ! unsolicited updates. Users must either run the CVSync client ! manually to get an update, or they must set up a ! cron(8) job to run it ! automatically on a regular basis. !

! The term CVSync, capitalized just so, refers to the entire software ! package. Its main components are the client cvsync which runs on ! each user's machine, and the server cvsyncd which runs at each of ! the OpenBSD CVSync mirror sites.

! The OpenBSD Project currently has four main source repositories: -

- -

What Is CVS?

- - CVS is the source code control system used to manage the OpenBSD source - tree. It is described in more detail here. - Note that CVS and CVSync are entirely different programs. Although - CVS can be used for remote file access, it is not optimized for - wholesale source tree distribution over the net, and CVSync can be - easily an order of magnitude more efficient for this task. -

Getting Started Using CVSync

- If you only care about running CVSync, it is recommended that you - download the cvsync package from the ftp mirror - sites instead of building your own from the net/cvsync - port. -

! For further information about CVSync, see the ! project homepage. ! However, don't build your own copy from unmodified upstream source - the port/package has been modified to support commitid which is now used in the OpenBSD repository. --- 19,67 ----

OpenBSD ! Source repository access: CVSync and rsync


! OpenBSD uses the CVS version control system. ! It is described in more detail here. ! The cvs(1) command is used ! to checkout a working tree and perform standard operations (log, diff, etc). ! It can either contact an CVS server (in most cases this will be an OpenBSD ! anoncvs server), or operate against a local ! copy of the repository.

! If you would like to operate a local anoncvs server, use cvs(1) commands ! offline, or simply have faster access, you may use CVSync or rsync to ! fetch a local copy of the repository. !

What Is CVSync?

+ CVSync is a software package specifically used for distributing + and updating cvs(1) repositories. + As it has knowledge of the file format it can operate more efficiently + than a general-purpose file synchronization program, however it is not + bug-free and can have problems updating at times. +

! The client cvsync runs on each user's machine (typically from ! a cron(8) job), and fetches ! from a server running cvsyncd.

Getting Started Using CVSync

! CVS is part of OpenBSD's base system. ! CVSync is an entirely different program and can be installed from ! packages: ! !

!         pkg_add cvsync
! 
! ! Do not build your own copy from unmodified upstream source - the port/package has been modified to support commitid which is now used in the OpenBSD repository. *************** *** 100,109 ****

! This directs cvsync to refresh all OpenBSD distributions from anoncvs.eu.openbsd.org with a umask(2) that permits group write permission to the local repository.

Assuming this file is saved as cvs-syncfile, the --- 83,93 ----

! This directs cvsync to fetch or refresh all OpenBSD distributions from anoncvs.eu.openbsd.org with a umask(2) that permits group write permission to the local repository. + The local copy of the files are stored in /cvs.

Assuming this file is saved as cvs-syncfile, the *************** *** 113,118 **** --- 97,134 ---- cvsync -c cvs-syncfile +

Getting Started Using Rsync

+ + Some repository mirrors offer access via rsync, a general-purpose + file synchronization program. + Again this should be installed from packages. + Two flavours are available: + +
+ 	# pkg_add rsync
+ 	Ambiguous: choose package for rsync
+ 	a	0: 
+ 		1: rsync-3.1.2p0
+ 		2: rsync-3.1.2p0-iconv
+ 	Your choice:
+ 
+ + Unless you have other requirements, simply install the standard version + (option 1 on the list above). + You can select the flavour on the command-line to avoid + pkg_add(1) prompting for the + version like so: +
+ 	pkg_add rsync--
+ 
+ + In order to mirror the OpenBSD repository with rsync, + the following command line might be used: + +
+ 	rsync -avz --delete rsync://obsdacvs.cs.toronto.edu/obsdcvs/ /cvs/
+ 
+

Using CVS to Work With Your Repository

Now that you have a local copy of the CVS repository, it is now simple *************** *** 130,138 **** cvs(1) man page. !

Available CVSync Servers

! The following CVSync servers are available: