The structure of your Visual Basic projects is maintained in two places; in the Visual Basic project itself, and, if the Repository Add-in for Visual Basic (RepVB) is registered, in the repository.
Whenever the same information is maintained in two locations, there exist possibilities for the two copies of the information to become unsynchronized with respect to each other. These are the most common possibilities:
In order to keep the repository information about a project synchronized with the Visual Basic project itself, RepVB performs an automatic project synchronization each time a project is opened in the Visual Basic environment. Automatic project synchronization consists of checking the last-modified time associated with each project component with the TimeStamp property of the corresponding MDO Model component. (Visual Basic project components are stored as separate files in the supporting file system. The last-modified time for a Visual Basic project component is the time and date that the project component's corresponding file was modified.) When a project component is found that has been modified either before or after the last time that it was synchronized with the repository, the repository copy of the information for that component is refreshed.
Automatic project synchronization is a very effective mechanism to keep the two copies of your Visual Basic project structure synchronized. However, it relies on the last-modified times that are maintained by the file system. If these times are not accurately maintained, then the automatic project synchronization feature of RepVB may not detect that a project has become unsynchronized.
As a last resort, RepVB provides a manual project synchronization capability. A manual project synchronization is only performed when you explicitly request it. Manual project synchronization consists of forcing the refresh of all project components for all open projects, regardless of their last-modified time and TimeStamp property values.