2. Focus Areas

The focus areas for best practice are

  1. GUI Tools

    • Use GUI tools for CVS client

  2. Developer Sandbox

    • Keep System clocks in Sync

    • Do not share the sandbox

    • Do not work outside the sandbox

    • Stay in sync with the repository

    • Cleanup after completion

    • Check-in often

  3. Server Configuration

    • CVS Server side scripting

    • CVS Server notification

  4. Branching and Merging

    • Assign ownership to trunk and branches

    • Tag each release

    • Create a branch after each release

    • Make bug fixes to branches only

    • Make patch releases from branches only

  5. Change propagation

    • Merge branch with the trunk after each release

  6. Software Builds

    • Build early and build often

    • Automate build process completely

    • All necessary files must be checked in before a build

  7. Institutionalize in the Organization

    • Implement change management

    • Make CVS usage part of developer's objectives

    • Collect metrics on CVS usage