Index: subversion/libsvn_wc/README =================================================================== --- subversion/libsvn_wc/README (revision 19304) +++ subversion/libsvn_wc/README (working copy) @@ -8,8 +8,8 @@ make queries and changes in the working copy. -The Problem We're Solving. -========================== +The Problem We're Solving +------------------------- The working copy is arranged as a directory tree, which, at checkout, mirrors a tree rooted at some node in the repository. Over time, the @@ -22,8 +22,8 @@ being a perfect mirror of some tree in the repository. -One Way We're Not Solving It. -============================= +One Way We're Not Solving It +---------------------------- Updates and commits are about merging two trees that share a common ancestor, but have diverged since that ancestor. In real life, one of @@ -33,6 +33,7 @@ because the principles involved are symmetrical. Why do we say symmetrical? +-------------------------- It's tempting to think of a change as being either "from" the working copy or "in" the repository. But the true source of a change is some @@ -72,7 +73,7 @@ Structure of the Working Copy -============================= +----------------------------- Working copy meta-information is stored in .svn/ subdirectories, analogous to CVS/ subdirs. See the separate sections below for more details. @@ -107,8 +108,7 @@ empty-file /* Obsolete, no longer used, not present in post-1.3 working copies */ -`format' - +`format': Says what version of the working copy adm format this is (so future clients can be backwards compatible easily). The changes in each format are listed in wc.h. @@ -120,19 +120,16 @@ existence-checking. `entries': - This file holds revision numbers and other information for this directory and its files, and records the presence of subdirs (but does not record much other information about them, as the subdirs do that themselves). See below for more information. -`dir-props' - +`dir-props': Properties for this directory. These are the "working" properties that may be changed by the user. -`dir-prop-base' - +`dir-prop-base': Same as `dir-props', except this is the pristine copy; analogous to the "text-base" revisions of files. The last up-to-date copy of the directory's properties live here. @@ -143,13 +140,11 @@ version that is being replaced). If this file doesn't exist, the `dir-prop-base' file is used. -`lock' - +`lock': Present if some client is using this .svn/ subdir for anything that requires write access. -`log' and `log.N' - +`log' and `log.N': These files (XML fragments) hold a log of actions that are about to be done, or are in the process of being done. Each action is of the sort that, given a log entry for it, either it is okay to do the @@ -229,8 +224,7 @@ The problem with the third way is that it can't conveniently refer to the user's actual working files, only to files inside .svn/. -`tmp' - +`tmp': A shallow mirror of the working directory (i.e., the parent of the .svn/ subdirectory), giving us reproducible tmp names. @@ -242,8 +236,7 @@ See discussion of the `log' file for more details. -`text-base/' - +`text-base/': Each file in text-base/ is a pristine repository revision of that file, corresponding to the revision indicated in `entries'. These files are used for sending diffs back to the server, etc. @@ -254,8 +247,7 @@ For a file scheduled for replacement, the text-base of the deleted entry may be stored in `foo.c.svn-revert'. -`prop-base/' - +`prop-base/': Pristine repos properties for those files, in hashdump format. Named with the extension `.svn-base'. @@ -263,8 +255,7 @@ entry may be stored in `foo.c.svn-revert'. -`props/' - +`props/': The non-pristine (working copy) of each file's properties. These are where local modifications to properties live. The files in this directory are given `.svn-work' extensions. @@ -287,8 +278,7 @@ like ACLs, permissions, ownership, and notes; but users shouldn't be trying to store 30 meg PNG files. :) -'wcprops/' and 'dir-wcprops' - +'wcprops/' and 'dir-wcprops': Some properties are never seen or set by the user, and are never stored in the repository filesystem. They are created by the networking layer (DAV right now) and need to be secretly saved and