Skip to Main Content

DevOps, CI/CD and Automation

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

SQLcl Project Export: Multiple developers works on same object - causing overlap

SarathKumar_14Jan 23 2026

Hi,

We followed the recommended model where:

  • We only exported the main application
  • Developers used working copies for APEX changes that were not yet ready
  • The merge process worked well and, as you mentioned, was transactional and safe for APEX metadata

This worked fine as long as all developers were working on the same development database for APEX.

However, we ran into challenges on the database objects side (packages, functions, procedures, tables):

  • Multiple developers modifying the same PL/SQL packages in the shared dev database led to conflicts
  • There was no clean isolation or rollback safety for in-progress DB object changes
  • This made parallel development risky for PL/SQL, even though APEX working copies were working as designed

Because of this, we started exploring a “true” CI/CD model, where:

  • Each developer has a dedicated database on their local machine
  • Developers clone the application and database objects locally
  • DB changes are version-controlled and merged using Git (SQLcl projects command)
  • This completely avoids conflicts on DDL / PL/SQL changes

This is where we hit a conceptual gap with APEX:

If each developer works on their own local database, then:

  • APEX working copies can’t really be used, since they only work within a single database
  • A working copy on my local database has no relationship to the application or working copies on another developer’s local database
  • When we later try to push changes, there’s no reliable way to detect or merge APEX differences across those isolated databases

So my question is mainly around architecture and intent:

  • Is it correct that APEX Working Copies are intentionally designed only for a shared-database development model?
  • In a setup where DB objects are developed in fully isolated databases per developer, is there any supported approach (perhaps using SQLcl Projects alone, or in combination with other tools) to safely manage and merge APEX changes?
  • Or is the expected best practice still a hybrid model:
    • Shared APEX dev database (to enable working copies)
    • Isolated schemas or other techniques for reducing DB object conflicts

I wanted to check if this is a scenario you’ve seen in the field, and whether there are any recommended patterns for teams trying to apply stricter CI/CD principles while working with APEX.

Thanks again for your time and insights — really appreciate it.

Comments
Post Details
Added on Jan 23 2026
0 comments
42 views