Version Control with Subversion......Page 3 Table of Contents......Page 4 Foreword......Page 11 How to Read this Book......Page 13 Icons......Page 14 Organization of This Book......Page 15 Acknowledgments......Page 16 From C. Michael Pilato......Page 17 Subversion's History......Page 18 Subversion's Features......Page 19 Subversion's Architecture......Page 20 Installing Subversion......Page 21 Subversion's Components......Page 22 The Problem of File-Sharing......Page 23 The Lock-Modify-Unlock Solution......Page 24 The Copy-Modify-Merge Solution......Page 26 Working Copies......Page 28 Revisions......Page 31 The Limitations of Mixed Revisions......Page 33 Summary......Page 34 Revision Numbers......Page 35 Revision Keywords......Page 36 Revision Dates......Page 37 Initial Checkout......Page 38 Basic Work Cycle......Page 39 Update Your Working Copy......Page 40 Make Changes to Your Working Copy......Page 41 svn status......Page 42 svn diff......Page 45 svn revert......Page 46 Resolve Conflicts (Merging Others' Changes)......Page 47 Merging Conflicts by Hand......Page 48 Copying a File Onto Your Working File......Page 49 Commit Your Changes......Page 50 Examining History......Page 51 svn log......Page 52 Examining Local Changes......Page 53 svn cat......Page 54 A Final Word on History......Page 55 svn import......Page 56 Summary......Page 57 Using Branches......Page 58 Creating a Branch......Page 60 Working with Your Branch......Page 62 Copying Specific Changes......Page 64 Previewing Merges......Page 67 Merging a Whole Branch to Another......Page 68 Undoing Changes......Page 70 Resurrecting Deleted Items......Page 71 Switching a Working Copy......Page 72 Tags......Page 73 Creating a Complex Tag......Page 74 Repository Layout......Page 75 Summary......Page 76 Unversioned Properties......Page 78 Berkeley DB......Page 79 Repository Creation and Configuration......Page 80 Hook Scripts......Page 81 svnlook......Page 83 svnadmin......Page 86 svndumpfilter......Page 87 svnshell.py......Page 90 Repository Cleanup......Page 92 Managing Disk Space......Page 94 Repository Recovery......Page 95 Migrating a Repository......Page 96 Repository Backup......Page 99 Choosing a Repository Layout......Page 101 Creating the Layout, and Importing Initial Data......Page 102 Summary......Page 103 Overview......Page 104 Client Credentials Caching......Page 105 Invoking the Server......Page 107 Built-in authentication and authorization......Page 108 Create a 'users' file and realm......Page 109 SSH authentication and authorization......Page 110 Prerequisites......Page 112 Basic Apache Configuration......Page 113 Authentication Options......Page 114 Basic HTTP Authentication......Page 115 SSL Certificate Management......Page 116 Blanket Access Control......Page 118 Per-Directory Access Control......Page 119 Repository Browsing......Page 122 Supporting Multiple Repository Access Methods......Page 123 Configuration Area Layout......Page 126 Configuration and the Windows Registry......Page 127 Servers......Page 128 Config......Page 130 Why Properties?......Page 132 Manipulating Properties......Page 133 svn:executable......Page 136 svn:ignore......Page 137 svn:keywords......Page 139 svn:eol-style......Page 141 Externals Definitions......Page 142 Vendor branches......Page 143 General Vendor Branch Management Procedure......Page 144 svn_load_dirs.pl......Page 145 Layered Library Design......Page 148 Repository Layer......Page 149 Repository Access Layer......Page 153 RA-DAV (Repository Access Using HTTP/DAV)......Page 154 Client Layer......Page 155 Using the APIs......Page 156 Using Languages Other than C and C++......Page 157 Inside the Working Copy Administration Area......Page 159 The Entries File......Page 160 WebDAV......Page 161 Programming with Memory Pools......Page 162 Join the Community......Page 164 Make and Test Your Changes......Page 165 Donate Your Changes......Page 166 svn Switches......Page 167 svn Subcommands......Page 170 svn add......Page 171 svn blame......Page 173 svn cat......Page 174 svn checkout......Page 176 svn cleanup......Page 178 svn commit......Page 179 svn copy......Page 181 svn delete......Page 184 svn diff......Page 186 svn export......Page 189 svn help......Page 191 svn import......Page 192 svn info......Page 194 svn list......Page 196 svn log......Page 198 svn merge......Page 202 svn mkdir......Page 204 svn move......Page 206 svn propdel......Page 208 svn propedit......Page 210 svn propget......Page 211 svn proplist......Page 213 svn propset......Page 215 svn resolved......Page 217 svn revert......Page 219 svn status......Page 221 svn switch......Page 225 svn update......Page 227 svnadmin Switches......Page 228 svnadmin Subcommands......Page 229 svnadmin create......Page 230 svnadmin dump......Page 231 svnadmin help......Page 232 svnadmin hotcopy......Page 233 svnadmin list-dblogs......Page 234 svnadmin list-unused-dblogs......Page 235 svnadmin load......Page 236 svnadmin lstxns......Page 237 svnadmin recover......Page 238 svnadmin rmtxns......Page 239 svnadmin setlog......Page 240 svnlook Switches......Page 241 svnlook......Page 242 svnlook author......Page 243 svnlook cat......Page 244 svnlook changed......Page 245 svnlook date......Page 246 svnlook diff......Page 247 svnlook dirs-changed......Page 248 svnlook help......Page 249 svnlook history......Page 250 svnlook info......Page 251 svnlook log......Page 252 svnlook propget......Page 253 svnlook proplist......Page 254 svnlook tree......Page 255 svnlook uuid......Page 256 svnlook youngest......Page 257 Directory Versions......Page 258 Distinction Between Status and Update......Page 259 Branches and Tags......Page 260 Binary Files and Translation......Page 261 Converting a Repository from CVS to Subversion......Page 262 Every time I try to run svn, it says my working copy is locked.......Page 263 What is the best method of doing a network trace of the conversation between a Subversion client and Apache server?......Page 264 Why does the 'svn revert' command require an explicit target? Why is it not recursive by default? This behavior differs from almost all the other subcommands.......Page 265 Why does log say "(no author)" for files committed or imported via Apache (ra_dav)?......Page 266 I'm trying to look at an old version of my file, but svn says something about "path not found".......Page 267 Just Plain WebDAV......Page 269 DeltaV Extensions......Page 270 Autoversioning Support......Page 271 The mod_dav_lock Alternative......Page 272 Mac OS X......Page 273 Linux davfs2......Page 274 Language Bindings......Page 275 Repository Browsing Tools......Page 276 Glossary......Page 277