Files get installed between wwwudev and www or wwwdev and www. This action is separate from pushing files to the production web servers, although a push can be initiated with the -push flag to the wwwuinst or wwwdinst.
The wwwuinst and wwwdinst programs are a Perl script which uses the correct directory depending on what command name is used.
The general steps for the install program are:
All directories, before installing, are checked for existence of a .wwwinstmk file. If it exists, the install program uses it as the input file to UNIX make. This allows developers to make sure that generated files are up-to-date before the install happend.
As an example, the UW Campus Maps Case Study shows that there is a data file which contains information about the different buildings, and different include files are generated so each map page can have an index of buildings. A .wwwinstmk file makes sure that the include files are up-to-date if the data file has been changed.
It is often valuable to be able to use RCS on a file for version control, locking, or both. Since it's not necessary to have RCS files in production, the install programs ignore any directory named RCS or any file ending with ,v (which are RCS version files).
During the install, if a file has write permission enabled, the install program will notify the user that the file is locked and will skip that file.
The install process does not force files to be checked out, so it's possible that a file under RCS control will be removed from the production web servers, but those files can be replaced by checking out the current version of the file and re-installing.