A quick review
Here are some of the more important but subtle issues associated
with working in a repository .
- The project was versioned by versioning the project as it appeared in the
Workbench. For this reason it is important to synchronize the project with
the repository (that is the HEAD or the branch that is being worked in) prior
to versioning it. Otherwise another user may have committed interesting changes
to the project which have yet to be updated in the Workbench. By proceeding
to version the project without updating, it will be versioned without these
changes.
- The repository contains all projects in the repository. Individual users
pick which projects they are interested in and check them out into the workspace.
From that point on they are synchronizing those projects (only) with respect
to the repository.
- The repository represents a large in-progress collection of all known projects.
From the repository's perspective, everything in HEAD or on a branch is always
open for change.
- The act of versioning a project effectively snapshots it and places it into
the Versions section of the repository, however the repository branches are
still open for change.
- It is important to first update to changes made to the repository, retest
with those changes and the soon to be committed changes and then commit the
changes. By first taking the latest changes in the branch, and retesting,
it helps to ensure that the changes about to be committed will actually work
with the current state of the branch.
- Each project is associated with a specific repository. Different projects
can be associated with different repositories that may be on completely different
servers.