[wp-hackers] Plugin Version Control & Source Code Hosting?

Peter Westwood peter.westwood at ftwr.co.uk
Thu Mar 19 21:24:55 GMT 2009

On 19 Mar 2009, at 15:14, Mike Schinkel wrote:
>> Personally, I manage them through SVN (either through the
>> official repo, or through one of my own) and then check them
>> out to the server where I'm hosting the custom site. Depending
>> on how things operate (e.g. for WPMU installs I do it
>> sometimes), I check out the files to a specific location
>> (~/svn or something) and then symlink the required files into
>> place in the (mu-)plugins/ directory.
> Currently I still develop on Windows and it doesn't have symlinks. I  
> also keep my test versions on my laptop in working condition and am  
> looking for a more streamlined (automated) way to keep plugins in  
> sync instead of having to manually export them to each and every  
> project. Anyone handle this process differently?

My recommendation, use subversion externals.

I really should write this up better as it is fairly simple (I don't  
have a live site running this way yet but I have a testbed setup this  

1) Create yourself a brand new subversion repository (to try this  
locally you can use tortoisesvn)
2) Create your wp-config.php and add it to the root of the repositiry
3) Edit the subversion property svn:externals as follows:

#WordPress core
public	http://svn.automattic.com/wordpress/tags/2.7.1
public/wp-content/plugins/wp-contact-form               http://plugins.svn.wordpress.org/wp-contact-form/trunk
public/wp-content/plugins/wp-super-cache                http://plugins.svn.wordpress.org/wp-super-cache/tags/0.8.6
public/wp-content/plugins/wp-db-backup                  http://plugins.svn.wordpress.org/wp-db-backup/tags/2.2.2
public/wp-content/themes/blog-theme                     https://example.com/theme/trunk

Swap public in here for public_html or what ever is relevant.

All of the urls are to subversion repositories.

Then you create a checkout on the webserver such that the root of the  
website is the subfolder called public above and hey presto you have  
it all pulled automatically from disparent svn repos.

If you want to store the theme in the same repository then this can be  
done and the external can be a reference to a different location in  
the repo


Peter Westwood
http://blog.ftwr.co.uk | http://westi.wordpress.com
C53C F8FC 8796 8508 88D6 C950 54F4 5DCD A834 01C5

More information about the wp-hackers mailing list