Plugin Directory


About your Subversion repository

To access your Subversion repository with a client, use a URL of this type: http://svn.wp-plugins.org/plugin-name

To view your repository in a browser, visit http://dev.wp-plugins.org/browser/plugin-name

For more info, please see VersionControl.

Getting Started

If your plugin is already setup in the repository and you have svn installed:

svn co http://svn.wp-plugins.org/your-plugin/
cd your-plugin/
cp /path/to/your/plugin-file.php trunk/
svn add trunk/plugin-file.php
svn ci -m "Initial Import"

Your plugin-file.php is now in the repository.

Explaining Branches, Tags, and the Trunk

A standard source control repository contains three top level folders:

  1. Trunk
  2. Tags
  3. Branches

This page will attempt to explain the purpose and use of these folders.


This is where your main (current) development takes place. The 'trunk' directory is the root directory for your code. You will (usually) be copying your 'trunk' directory to create tags and branches.


A tag is an archival snapshot of the current code (the code from trunk directory) to record the state of the code at a specific time. When you do a release, or when you want to create a snapshot of your code for any reason, you do so by creating a tag. Tags are intended as an archive. Once a tag is created you should not commit to it. If you do, the tag effectively becomes a branch. You can read more about creating a tag.


A branch is pretty much the same as a tag, only it's intended for further development. For instance, if you make a copy of the trunk directory that works for WordPress 1.2 before you start updating it for v1.5, that would be a branch. The 1.2 branch may still recieve further development. For plugins, we'll most likely have a branch of the plugin that corresponds to each WordPress release. If a problem is found with an older version of a plugin (say one for WordPress 1.2), it can be fixed on the appropriate branch for the plugin, then a tag and a patch release can be created. Meanwhile, the new development for the plugin for the current version of WordPress continues in 'trunk'.

For example, here's how you would create a branch of your plugin for Wordpress 1.2

svn copy trunk branches/1.2
svn commit -m "created a branch for Wordpress 1.2 compatible code"

You can read more about branches here.

Last modified 12 years ago Last modified on 04/06/06 22:17:36