Only about 3 months late getting up to the 2.6 line… nothing wrong with letting someone else find the biggest security holes & bugs anyway.
Please let me know if you see anything that doesn’t look quite right.
The upgrade process from 2.5 was relatively painless. This isn’t actually what I did, but if I was going to do it again, this is how I’d do it. I did all this stuff, just out of order and with needless downtime.
- Full backup (cp -rp) of the wordpress filesystem, full mysqldump of the database. Copied both to remote server.
- Updated all my plugins to the latest and greatest. Spotcheck that all is good, another round of backups.
- Disabled caching, cleared the cache.
- In wp-content/plugins/, did
svn pd svn:externals
- In wordpress’ root dir, did
svn sw http://svn.automattic.com/wordpress/tags/2.6.2/ ./
- Fixed up permissions by doing
find ./ -type f -exec chmod XXX {} \;
find ./ -type d -exec chmod YYY {} \;
from wordpress root dir, where XXX and YYY are the minimum permissions required by your webserver configuration for files and directories.
- Added some more random permission fixes, like webserver write to wp-content/cache/, etc.
And… wordpress upgraded the db for me on the first administrator login, I re-enabled my plugins without incident, made another round of backups, and it looks all good to go. Plz let me know if you notice anything a little wack!
Let’s say you wanted to transfer a complete copy of an existing SVN repository, all history included, from a googlecode.com project to a subdirectory in another preexisting repository. This takes a few steps since us mere mortal non-googlers (and former googlers) don’t get direct command line access to the googlecode.com servers.
- Make a local copy of the full googlecode.com repository.
svnadmin create local_repos
echo -e "#\041/bin/sh" > local_repos/hooks/pre-revprop-change
echo "exit 0" >> local_repos/hooks/pre-revprop-change
chmod 755 local_repos/hooks/pre-revprop-change
svnsync init file://`pwd`/local_repos https://urproject.googlecode.com/svn
svnsync sync file://`pwd`/local_repos
- Now, you can make a dump of that local repository.
svnadmin dump ./local_repos > thedump
- Copy that dumpfile over to wherever your preexisting destination repository is located. -C is for gzip compression during transfer, and is helpful if you have a big repository full of text.
scp -C ./thedump yourhost.com:~/
- Now, we load that dumpfile.
ssh yourhost.com
svn mkdir file://path/to/your/repos/dir_for_googlecode_copy
svnadmin load /path/to/your/repos --parent-dir dir_for_googlecode_copy < thedump
Revision number will be incremented correctly (ending at the sum of the two previous repositories), all the commit logs and such are transfered intact, including the authors (even if they’re not users on the new system). Pretty smooth.