What is the best approach to a release cycle with Oracle APEX? Typically I would make changes to files (HTML, PHP, etc.) in a development environment and copy them to production when they're ready to go live. But with APEX the changes are stored in the DB as part of the application.
One approach I was considering is to copy the application from PROD to DEV as a packaged application. I assume that would be like doing a refresh from PROD to DEV. Then at release time I imagine we'd export the application from DEV and import to PROD. Is that a reasonable approach? How could I create scripts to do that repeatably?
Also, normally when we make database schema changes, we would package them up in SQL scripts and run them in DEV and then PROD when we go live. But with APEX we make changes to database objects using the UI. How would I apply just the changes we made in DEV to PROD without overwriting the data in prod?