Deleting the objects in the database file directly is less time-consuming if it is only a matter of creating the versions.Even if, thinking about it again, there is not a big difference between going from intermediate text files or directly deleting forms, reports, modules from the main file Version0, in essence it is the same thing
The variant with the exported files would have the advantage that you can use version control system with different branches fro each app version, then you could update the branches with rebase or merge, for example, and the deletion with each update could possibly be omitted completely.
Quick side thought:
I created an add-in that allows me to import reusable codemodules including their dependencies.
To do this, I write the codemodules that it requires as a comment (similar to xml tags) in each codemodule.
You could also use a similar concept to automatically compile each required version.
Example:
Code:
'<codelib>
' <file>data/FilterStringBuilder.cls</file>
' <license>_codelib/license.bas</license>
' <use>text/StringCollection.cls</use>
' <use>data/SqlTools.cls</use>
' <test>_test/data/FilterStringBuilderTests.cls</test>
'</codelib>