v0.12.0 升级笔记

今天终于把 writefreely 升级到了 0.12.0 版本,有以下几个主要变化:

此外还修复了大大小小的 bug。增加了一些页面,配套的翻译还在进行中。

很遗憾,中文标签依然没有实装,我打算再去 github 催一催,或者找机会迁移到 mysql 算了……


简单记录一下这次升级的过程,以资参考。

首先,从服务器备份数据库:

ssh <user>@<your-server>
// windows
pscp.exe <you>@<your-server>:</path/to/your/>writefreely/writefreely.db <local destination>
// -nix
scp <you>@<your-server>:</path/to/your/>writefreely/writefreely.db .

然后下载新的 release 到服务器,解压:

dpkg --print-architecture // 获取本机 cpu 架构
wget https://github.com/writeas/writefreely/releases/download/v0.12.0/writefreely_0.12.0_linux_amd64.tar.gz
tar -zxvf writefreely_0.12.0_linux_amd64.tar.gz

根据官方说明,接下来执行以下几步:

但由于我做了本地化,魔改了不少 css 和页面模板,static/, pages/, templates/ 这三个目录不能直接覆盖,需要和 remote git repo 里的版本 merge。之前迟迟没有动手,也是在纠结这一步要怎么做。权衡了各种方案后,最后我决定把 repo clone 到本地,然后在本地手动合并。

我用的工具是 WinMerge,可以对比最多三个文件夹。大部分改动都挺 trivial,只是比较繁琐(有些页面我就顺便翻译了)。注意这个工具会产生一堆 .bak 文件,需手动删除。全部做完后,push 回 repo,再登进服务器 pull 就行了。

这一步不会和其他步骤冲突,可以有闲的时候慢慢处理,等全部文件准备好了再做升级。除了合并静态文件之外,实际升级耗时五分钟左右。

#dev #meta