You can have multiple build files inside the .dvt directory, and tell DVT which one to use for compilation by using the Set current build button from the toolbar:
The current build name is saved in the .dvt/build.config.xml file.
The project state is saved per build file after each build, and this allows you to easily switch between multiple views of the project (see Build Persistence for more information).
Use cases
Depending on your current focus (browsing the design, writing testbench code, debugging) you only want to load in DVT the relevant code
rtl.build contains all directives needed to compile the design
testbench.build contains all the directives needed to compile the verification environment
default.build includes both the rtl.build and testbench.build
Quickly switch between synthesizable and non-synthesizable version of the design hierarchy
default.build contains all directives needed to compile all the code
synth.build contains +dvt_preprocess_translate_pragmas+synthesis and a -f directive to include default.build
You switch often between several versions of the same code base. The paths to the few different files are controlled by the $VERSION environment variable.
compile.f contains directives needed to compile all the code
version1.build contains +dvt_setenv+VERSION=1 and a -f directive to include compile.f
version2.build contains +dvt_setenv+VERSION=2 and a -f directive to include compile.f
…
You want to change the active build before launching DVT, as designers compile just the RTL by rtl.build, while others all.build.
Change the build name in .dvt/build.config.xml before launching DVT, for example by a wrapper script run_dvt.sh-rtl.