1. build the giant XML file 2. import it into the platform 3. make the change (e.g. update a form or database column) 4. export as XML 5. shred it into thousands of little XML files
Then you discover that one simple change in the app has turned into dozens of changes in XML files. And you have to figure out which of those changes to include in your commit. If you guess wrong, then unpredictable things can happen.
If you're tempted to bypass all this by just editing the XML directly - sometimes it works, and sometimes the whole thing is deemed invalid, which you discover when importing it and you get an extremely unhelpful error message.
The original idea was that you can define a data model, forms, and some business logic in a no-code manner. But it's a nightmare when you have a team of software developers working on an app.