Subversion

You can get the latest development cutting-edge pre-release version of PmWiki. Note that a development version may not be as stable and as bug-free as official releases.

Download pre-release zip archive

You can download the latest development code packed as a zip archive here: pmwiki-latest-svn.zip. Note that the pmwiki.org site also usually runs with the latest code from Subversion, so it can be tested.

Obtaining PmWiki via Subversion (svn)

Another way to obtain copies of PmWiki is via subversion. First, you need a subversion client of some sort to be able to access the repository. We'll assume a command-line "svn" client here.

The latest release of PmWiki is available from svn://pmwiki.org/pmwiki/tags/latest. To use subversion to obtain a copy of the latest release, use a command like:

svn export svn://pmwiki.org/pmwiki/tags/latest pmwiki --force

This will obtain the latest release and place it into a "pmwiki" directory in your current directory. When a new release comes out and you wish to update to the latest release, simply repeat the command above. This will update your installation of pmwiki with the latest release.

If you want the absolutely latest version that has been checked into the repository (which may contain unreleased features), you can use "svn export svn://pmwiki.org/pmwiki/trunk pmwiki --force" instead.

Specific versions of PmWiki are also available in the tags/ directory. So, if you update to the latest version and find that you need to revert to a previous version, you can do

svn export svn://pmwiki.org/pmwiki/tags/pmwiki-2.1.26 pmwiki --force

to make your current copy be updated to be the same as the 2.1.26 release. To get back to the latest release, just use the .../tags/latest version mentioned above.

If you are not sure what releases are available in the tags/ directory you can list them using the "svn ls" command as follows:

svn ls svn://pmwiki.org/pmwiki/tags/

Export vs Checkout

Alternatively you can use svn checkout instead of svn export. Some advantages to this include:

  • incremental updates — you only download what's changed since last revision;
  • merging of changes — if you have modified one of the core files (although you shouldn't) svn will try to merge your changes with the latest version;
  • easy patch creation — if you find a bug and fix it you can use svn diff filename.ext to generate a patch file that can be submitted for next release.

The downside to using checkout is the wiki takes up twice the amount of disk space and you have hidden ".svn" subfolders which you will need to make sure your webserver doesn't serve to users. The Apache web server will typically have a rule that blocks access to any file or directory beginning with a dot, so it shouldn't be an issue for most people.

Automating it

If you want a fully-automated and hassle-free upgrade/backup process, you could add the following shell script to your crontab:

   echo Making backup of PmWiki...
   cp -r pmwiki pmwiki.bak; # Make backup, overwriting old one.
   echo Downloading latest version...
   svn export svn://pmwiki.org/pmwiki/tags/latest pmwiki --force

(Save it as pmwiki-upgrade.sh or whatever.) The backup creation step could be elaborated upon somewhat, to give incremental backups for example, or at least a timestamp.


This page may have a more recent version on pmwiki.org: PmWiki:Subversion, and a talk page: PmWiki:Subversion-Talk?.