50 lines
		
	
	
	
		
			2.2 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			50 lines
		
	
	
	
		
			2.2 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| <!-- $Id: synching.sgml,v 1.9 1997-02-22 12:59:32 peter Exp $ -->
 | |
| <!-- The FreeBSD Documentation Project -->
 | |
| 
 | |
| <chapt><heading>Synchronizing source trees over the Internet<label id="synching"></heading>
 | |
| 
 | |
| <p><em>Contributed by &a.jkh;.</em>
 | |
| 
 | |
| <!--
 | |
| 
 | |
| Last updated: $Date: 1997-02-22 12:59:32 $
 | |
| 
 | |
| This document tries to describe the various ways in which a user may
 | |
| use the internet to keep development sources in synch.
 | |
| -->
 | |
| 
 | |
| <p>There are various ways of using an Internet (or email) connection
 | |
| to stay up-to-date with any given area of the FreeBSD project sources,
 | |
| or all areas, depending on what interests you.  The primary
 | |
| services we offer are CVSup and CTM.
 | |
| 
 | |
| <p><bf>CVSup</bf> is the new kid on the block, it does everything that sup
 | |
| did and more, doing it also far more efficiently in terms of its demands
 | |
| on server disk space and network resources.  Because of this, CVSup has
 | |
| largely replaced <ref id="sup"> in the FreeBSD Project.  Like sup, it also
 | |
| operates on a <em>pull</em> synchronization model.
 | |
| 
 | |
| <p><bf>CTM</bf>, on the other hand, does not interactively compare
 | |
| the sources you have with those on the master archive.  Instead, a script
 | |
| which identifies changes in files since its previous run is executed several
 | |
| times a day on the master archive, any detected changes being compressed,
 | |
| stamped with a sequence-number and encoded for transmission over email
 | |
| (printable ASCII only).  Once received, these "CTM deltas" can then be
 | |
| handed to the ctm_rmail(1) utility which will automatically decode, verify
 | |
| and apply the changes to the user's copy of the sources.  This process is
 | |
| far more efficient than CVSup, and places less strain on our server resources
 | |
| since it is a <em>push</em> rather than a <em>pull</em> model.
 | |
| 
 | |
| <p>There are other trade-offs, of course.  With CVSup, you can also
 | |
| inadvertently wipe out portions of your archive and CVSup will detect
 | |
| and rebuild the damaged portions for you.  CTM won't do this, and if
 | |
| you wipe some portion of your source tree out (and don't have it backed
 | |
| up) then you will have to start from scratch (from the most recent CVS
 | |
| "base delta") and rebuild it all.
 | |
| 
 | |
| For more information on CTM, CVSup or the now largely-obsolete sup, please
 | |
| see one of the following sections:
 | |
| 
 | |
|    &ctm;
 | |
|    &cvsup;
 | |
|    ⊃
 |