VCS best practice for development vs production

Paul Mulroney pmulroney at
Fri Jan 26 09:40:51 UTC 2024

Hi Everyone,

Our biggest client has given us some major projects to be done, while at the same time they want to keep sending us maintenance items to fix.  In times past we've been able to arrange it so that the big changes are relatively separate from the production code, so we don't have to worry about introducing bugs into production.  However, it's coming to the place where that is no longer feasible and we are looking at a way to setup two branches - Production and Development.

The Production "branch" (for want of a better term) is the live system, and maintenance patches are done here.  The Development branch is where we're building the new major work that may be a significant change from the old system.

We're thinking about two approaches:
1. Using two Omnis VCS repositories - Production and Development.  I can see problems with this approach - for example, maintenance changes need to be done in both VCS (double entering code ... not good); when the Development version is ready to deploy, how do we get it into Production, etc.
2. Somehow using the JSON conversion tools and git to merge the Development into production.  The process would be something like: Omnis -> JSON -> git merge -> Omnis.  Lots of manual process, and we'd need to be smart about dealing with merge conflicts.  

I'm sure that other Omnis developers grapple with this issue - what's considered best practice for Omnis source code control when you're working in two environments?

I would appreciate any insights that people might have with this!


"Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it."  Brian W. Kernighan
Paul W. Mulroney                                            We Don't Do Simple Pty Ltd 
pmulroney at       Trading as Logical Developments                   ACN 161 009 374 
Ph: +61 8 9458 3889                                       86 Coolgardie Street
                                                                         BENTLEY  WA  6102

More information about the omnisdev-en mailing list