
This is the Title of the Book, eMatter Edition
Copyright © 2007 O’Reilly & Associates, Inc. All rights reserved.
Network Model
|
109
example, if a server is configured to allow anyone in the world to read a repository,
then the server will never issue an authentication challenge when a client attempts to
svn checkout.
If the client’s network request writes new data to the repository (e.g.,
svn commit),
then a new revision tree is created. If the client’s request was authenticated, then the
authenticated user’s name is stored as the value of the
svn:author property on the
new revision (see “Unversioned Properties” in Chapter 5). If the client was not
authenticated (in other words, the server never issued an authentication challenge),
then the revision’s
svn:author property is empty.
*
Client Credentials Caching
Many servers are configured to require authentication on every request. This can
become a big annoyance to users, who are forced to type their passwords over and
over again.
Happily, the Subversion client has a remedy for this: a built-in system for caching
authentication credentials on disk. By default, whenever the commandline client suc-
cessfully authenticates itself to a server, it saves the credentials in the user’s private
runtime configuration area—in ~/.subversion/auth/ on Unix-like systems or
%APPDATA%/Subversion/auth/ on Windows. (The runtime area is covered further
in “Runtime Configuration ...