Developer Forum »
Merging strategies between dev/prod sites
20 posts

Hi Guys

I am relatively new to Webnodes - my company have used it on one project so far - and it worked out pretty good.

We are now doing more work on this site - and we have branched out the site - so that we can develop new features without interferring with the site that is in production.

My question is - what's the best way of dealing with merging content (which is in the DB)?

E.g. a person might publish and work on the PROD site - while we are still developing on the DEV site. When we push the DEV site into production - the changes/content made to the PROD site will be lost.

I guess one way is to publish content both in PROD and DEV - is there a better solution / approach? (it eventually boils down to merging DB's.. right? )

 

- N

120 posts

Hi, there is currently no standard and built-in way to merge content between sites. 

We have identified this need so we are working on it. For now there is one function that might help you:

Turn on guids for all your contents. It is an option within the Systems module under settings. Enable the checkbox "Enable guids". Once it is turned on select the "Ensure valid guids" from the "Indexes" Menu. Do this for both installations.

Select "Download kit file" from the "System" menu. Here you can locate the contents you want to  download. You can select multiple items. (Tip: you can supply a list of node IDs in the search box.)

Log into the production server and select "System/Upload kit file" from the menu.

This should enable you to export and import contents across installations. The import will override contents with matching guid numbers. The import includes relatations, but for relations to be complete both ends of the relation must be included in the kit file.   The import/export will handle differences in class definitions. Matching properties are included, non-matching properties are excluded.   There is also some built-in functionality for merging defintions and code files. We recommend using a source control system like "Mercurial" and merge definition files and use the "Load definition files without IDs" after a merge.   We are working on putting all this functionality into a "kit-system" that will allow you to merge content, code and definitions between any site through a user friendly interface. We hope to complete this before the Summer.

20 posts

Excellent! Will try out the Guids & System Kit approach.

-N

1