For practical reasons, that is, reasons that have nothing to do with software engineering, duplicates of directory trees must be maintained:
- the re-motion assembly directory
- the template tree
The re-motion assembly directory is needed for both
- the uigen.exe project
- the PhoneBook project
Each of these projects holds its own local copy of the re-motion assembly directory.
The template tree is part of the uigen.exe project. It is needed by the PhoneBook project, so the latter keeps a copy of the former.
Each of these directory/tree copy must be identical to its duplicate for every major release of re-motion. They are intimately related to each other, because
- the PhoneBook project demonstrates the use of uigen.exe – and, by implication, uigen.exe templates
- the PhoneBook project is also the test-bed for the uigen.exe project
- both the PhoneBook project and the uigen.exe project need the re-motion assemblies to run
For more background, see Maintaining uigen.exe and uigen.exe templates.
For class-room training and the PhoneBook tutorial, the use of the entire local re-motion project is not very practical. It is much more practical to work with the re-motion build results, i.e. the re-motion assemblies.
The responsibility of keeping the two template directories in sync with each other falls on the PhoneBook/uigen.exe/template maintainer (as explained in Maintaining uigen.exe and uigen.exe templates).