11.07.2015 Views

Version Control with Subversion - Login

Version Control with Subversion - Login

Version Control with Subversion - Login

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Repository Administration$ svndumpfilter helpgeneral usage: svndumpfilter SUBCOMMAND [ARGS & OPTIONS ...]Type "svndumpfilter help " for help on a specific subcommand.Type 'svndumpfilter --version' to see the program version.Available subcommands:excludeincludehelp (?, h)svnsyncThere are only two interesting subcommands: svndumpfilter exclude and svndumpfilterinclude. They allow you to make the choice between implicit or explicit inclusion of pathsin the stream. You can learn more about these subcommands and svndumpfilter's uniquepurpose later in this chapter, in the section called “Filtering Repository History”.The svnsync program, which is new to the 1.4 release of <strong>Subversion</strong>, provides all thefunctionality required for maintaining a read-only mirror of a <strong>Subversion</strong> repository. Theprogram really has one job—to transfer one repository's versioned history into another repository.And while there are few ways to do that, its primary strength is that it can operateremotely—the “source” and “sink” 7 repositories may be on different computers from eachother and from svnsync itself.As you might expect, svnsync has a syntax that looks very much like every other programwe've mentioned in this chapter:$ svnsync helpgeneral usage: svnsync SUBCOMMAND DEST_URL [ARGS & OPTIONS ...]Type 'svnsync help ' for help on a specific subcommand.Type 'svnsync --version' to see the program version and RA modules.Available subcommands:initialize (init)synchronize (sync)copy-revpropshelp (?, h)$We talk more about replicating repositories <strong>with</strong> svnsync later in this chapter (see the sectioncalled “Repository Replication”).fsfs-reshard.pyWhile not an official member of the <strong>Subversion</strong> toolchain, the fsfs-reshard.py script (foundin the tools/server-side directory of the <strong>Subversion</strong> source distribution) is a usefulperformance tuning tool for administrators of FSFS-backed <strong>Subversion</strong> repositories. FSFSrepositories contain files that describe the changes made in a single revision, and files thatcontain the revision properties associated <strong>with</strong> a single revision. Repositories created inversions of <strong>Subversion</strong> prior to 1.5 keep these files in two directories—one for each type offile. As new revisions are committed to the repository, <strong>Subversion</strong> drops more files intothese two directories—over time, the number of these files in each directory can grow to bequite large. This has been observed to cause performance problems on certain networkbasedfilesystems.<strong>Subversion</strong> 1.5 creates FSFS-backed repositories using a slightly modified layout in whichthe contents of these two directories are sharded, or scattered across several subdirectories.This can greatly reduce the time it takes the system to locate any one of these files,7 Or is that, the “sync”?134

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!