We presently make use of an SVN repository to make sure everyone's local conditions are maintained-to-date. However, Drupal web development is sort of more difficult for the reason that any custom code you are writing (for example, PHP code written for any node body) is saved within the DB and also the changes aren't identified by the SVN working copy.

You will find a few designers who're presently focusing on exactly the same section of a Drupal site, but we are uncertain on how to best merge our local Drupal database changes together. Carrying out patches of database dumps appear clumsy at the best and is probably inefficient and error-prone for this function.

Any suggestions on how to approach this problem is appreciated!

If you're putting php code to your database then you're doing the work wrong. Some stuff are within the database like sights and cck fields and several configurations. But when you place php code within the node body you're developing a large code maintenance problem. You need to really make use of the API and hooks rather. Create modules rather than ugly hacks with eval etc.

Regrettably, database deployment/update is just one of Drupals weak spots. See this &lifier solutions in addition to that one for many suggestions on how to approach it.

For CCK, you could discover some hints here.

For php code in content, To be sure with googletorp for the reason that you need to avoid carrying this out. However, if for whatever reason you will need to do it, you could attempt to lessen the code to some simple function call. Thus you'd possess the function itself inside a module (and this is monitored via SVN). However you are a little step from getting rid of the requirement for the inline code anyways ...

By carrying out patches of database dumps, would you mean taking a whole extract from the db and carrying out it after each change?

What about an expert copy from the database? Extract all tables, sights, sps, etc... into individual files, place them into svn and do your merge edits around the individual objects?

All that's been stated above holds true and helpful advice.. To reply to your practical question, you will find numerous recent modules you could use to move the alterations made by the different designers.

The "Features" modules is really a cure the the referred to problem of Drupal frequently supplying nice features, although storing plenty of configs and structure within the DB. This module allows you to definitely capture an element and output it as being a pseudo-module (qualifies like a module with .info and code-files and all sorts of). This is how it really works:

1) Choose functionality/feature to export 2) The module analyses the modules, files, DB content that's needed to rebuild which include elsewhere 3) The module produces a pseudo-module that consists of the instructions in #3 and results everything (even SQL to rebuild the stuff within the DB) right into a module package (in addition to sets dependencies for other modules needed) 4) Install the pseudo-module in your new site and enable it 5) The pseudo-module illegal copies the feature you released repairing DB data and all sorts of

And you will inform your boss you probably did everything by hand with razor focus to prevent even 1 error ) I really hope this can help - http://drupal.org/project/features