Managing Drupal core, module, and custom files

One of the the most important things for a successful Drupal website is to keep the code it uses up to date and secure. To do this, many times you must update code from Drupal.

There are several ways to update files from Drupal.org. One way is via download. You simply click on a download link either from your Available Updates page (admin/reports/updates) or you visit the module page on a website like drupal.org/project to find the module and retrieve it there. Either way, your result is replacing an entire folder which may have several to dozens of files and subdirectories of files all being replaced to be sure your site properly includes (or removes) all the necessary changes and updates. This is inefficient and time consuming.

CVSA better way to update files for Drupal, is to use CVS and deploy your site directly from the cvs repositories on drupal.org.

Yet, what about the custom files and or (*gulp*) hacks/patches you may need to add to your drupal site? The solution is actually a combination of using CVS and SVN (subversion).

We have found this process to make updates a whole lot easier. The Drupal core files and contributed modules are all loaded by CVS into a SVN locally-maintained directory. Each time these modules are updated with CVS, they are then committed to our SVN project. Any custom modules or themes are also saved in the SVN project. Any modifications to CVS files can be kept in SVN branches to be merged with any updates. CVS will attempt to merge updates to your "hacks" and shows any conflicts, which need to be dealt with manually. Once you have every updated tested and saved to SVN, you can update the files on the website's public version.

SVNSimple as that... (simple?)... well, ok. Using two version control systems simultaneously seems a bit strange. But, really, it has proven to be a great way to keep your site updated and current while giving the developer a history of custom changes throughout the file structure.

See Nick Sergeant's page for some more info:
http://nicksergeant.com/blog/drupal/painless-drupal-revision-control-cvs...

Comments

OK

Using two version control systems simultaneously does seem a bit strange, but I will give it a try.

Post new comment

The content of this field is kept private and will not be shown publicly.
CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
se_urity: