Introduction | p. xv |
Why Open Source Development And CVS Go Together | p. 1 |
What Is Free Software (And Why Should You Care)? | p. 1 |
What Does CVS Have To Do With It? | p. 5 |
Principles Of Open Source Development And How CVS Helps | p. 8 |
What Makes It All Tick? | p. 9 |
An Overview Of CVS | p. 13 |
CVS Basics | p. 13 |
A Day With CVS | p. 17 |
Other Useful CVS Commands | p. 50 |
Branches | p. 66 |
The Open Source Process | p. 79 |
Failure And Success | p. 79 |
Starting A Project | p. 80 |
Running A Project | p. 88 |
Knowing What We Don't Know | p. 100 |
CVS Repository Administration | p. 101 |
The Administrator's Role | p. 101 |
Getting And Installing CVS | p. 101 |
Anatomy Of A CVS Distribution | p. 106 |
Starting A Repository | p. 111 |
Finding Out More | p. 137 |
Designing For Decentralized Development | p. 139 |
The Importance Of Software Design | p. 139 |
Proprietary Software Design Vs. Free Software Design | p. 140 |
Design Invariants | p. 142 |
Code Design | p. 143 |
Evolution-Centered Design | p. 147 |
Principles Of Free Software Design | p. 148 |
When In Doubt, Abstain | p. 152 |
Advanced CVS | p. 153 |
Beyond The Basics | p. 153 |
CVS As Telephone | p. 153 |
A Bird's Eye View Of Project History | p. 172 |
Using Keyword Expansion | p. 180 |
Going Out On A Limb: How To Work With Branches And Survive | p. 182 |
That's All, Folks! Welcome To Guru-Hood | p. 199 |
Building, Testing, And Releasing | p. 201 |
Why Release? | p. 201 |
Starting The Release Process | p. 202 |
Testing | p. 206 |
Building, Installing, And Packaging | p. 208 |
Releasing | p. 213 |
Finding Out More | p. 215 |
Tips And Troubleshooting | p. 217 |
When Things Go Wrong | p. 217 |
The Usual Suspects | p. 218 |
Common Problems And How To Solve Them | p. 221 |
Complete CVS Reference | p. 235 |
Organization And Conventions | p. 235 |
Commands | p. 235 |
Keyword Substitution (RCS Keywords) | p. 269 |
Repository Administrative Files | p. 272 |
Run Control Files | p. 279 |
Working Copy Files | p. 280 |
Environment Variables | p. 282 |
Third-Party Tools That Work With CVS | p. 285 |
What Are Third-Party Tools? | p. 285 |
pcl-cvs: An Emacs Interface To CVS | p. 285 |
cvsutils: General Utilities For Use With CVS | p. 291 |
cvs2cl.pl: Generate GNU-Style ChangeLogs From CVS Logs | p. 294 |
cvslock: Lock Repositories For Atomicity | p. 296 |
Other Packages | p. 298 |
Writing Your Own Tools | p. 299 |
CVS Maintenance And Development Today | p. 301 |
GNU General Public License | p. 303 |
Index | p. 311 |
Table of Contents provided by Syndetics. All Rights Reserved. |