Free Trial

Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.


  • Create BookmarkCreate Bookmark
  • Create Note or TagCreate Note or Tag
  • DownloadDownload
  • PrintPrint
Share this Page URL
Help

Chapter 8. Embedding Subversion > Layered Library Design

8.1. Layered Library Design

Each of Subversion’s core libraries can be said to exist in one of three main layers—the Repository layer, the Repository Access (RA) layer, or the Client layer (see Figure P2-1 in the Preface). We will examine these layers shortly, but first, let’s briefly summarize Subversion’s various libraries. For the sake of consistency, we will refer to the libraries by their extensionless Unix library names (libsvn_fs, libsvn_wc, mod_dav_svn, etc.):


libsvn_client

Primary interface for client programs


libsvn_delta

Tree and byte-stream differencing routines


libsvn_diff

Contextual differencing and merging routines


libsvn_fs

Filesystem commons and module loader


libsvn_fs_base

The Berkeley DB filesystem backend


libsvn_fs_fs

The native filesystem (FSFS) backend


libsvn_ra

Repository Access commons and module loader


libsvn_ra_local

The local Repository Access module


libsvn_ra_neon

The WebDAV Repository Access module


libsvn_ra_serf

Another (experimental) WebDAV Repository Access module


libsvn_ra_svn

The custom protocol Repository Access module


libsvn_repos

Repository interface


libsvn_subr

Miscellaneous helpful subroutines


libsvn_wc

The working copy management library


mod_authz_svn

Apache authorization module for Subversion repositories access via WebDAV


mod_dav_svn

Apache module for mapping WebDAV operations to Subversion ones


  

You are currently reading a PREVIEW of this book.

                                                                                        

Get instant access to over
$1 million worth of books and videos.

  

Start a Free Trial