I finally got around to upgrading the bunch of WordPress blogs that I administer. I do not use the the Debian package, instead each blog is a separate copy, some with customizations. The official instructions make it a pain to upgrade customized WordPresses, so I have used another technique for a while now.
This technique assumes a Unix-style system with all the usual goodies installed and command-line access, as well as Unix competence of the person performing this operation. I leave it to others to write step-by-step instructions for people lacking such competence (feel free to leave a comment).
Step 0: Back up all your WordPress installations!
Step 1: Make sure that you have a copy of the vanilla WordPress directory (unpacked from the zip or tarball and not changed afterward) for the version that you are currently running. I have it (in this case version 2.0.4) as the directory wp-2.0.4.
Step 2: Download the new version, unpack it and rename the unpacked directory to include the version number (in this case, wp-2.0.5).
Step 3: Create a patch file for this upgrade by running diff -Naur wp-2.0.4 wp-2.0.5 > ~/wp-2.0.4-2.0.5.diff.
Step 4: Eyeball the patch to see if it looks sane. (I have on one occasion created a patch that deletes the whole WordPress installation. That is not fun. So check that the diff is sane!)
Step 5: Apply the patch to your WordPress installation by changing to the WordPress installation’s directory and running patch -p1 -i ~/wp-2.0.4-2.0.5.diff.
Step 6: If patch rejected some hunks, eyeball the .rej files to see if you need to manually merge the changes in. This should only happen if you have customized the installation.
Step 7: Run the database upgrade script by going to the admin page and following the instructions.
Step 8: Verify that it all works.
It is also possible to manage the installations in darcs or in other version control systems. I haven’t bothered with that yet.