YIcon Builder - update #
升级准备 #
必看 #
- 在进行升级前请先 备份数据,这是最重要的一点。
v1.1.0 #
检查数据表结构是否正确,升级到 1.1.0 版本时,必须在 icons 表中添加
description
字段,projects 表添加source
字段description
字段ALTER TABLE icons ADD description varchar(5000) default NULL;
source
字段ALTER TABLE projects ADD source varchar(255) default Null;
v1.2.0 #
检查数据表结构是否正确,在 1.1.0 基础上升级到 1.2.0 版本时,必须新增一个 cache 表,在 projects 表中添加
description
、updateAt
、publicName
等三个字段cache
表DROP TABLE IF EXISTS `caches`; CREATE TABLE `caches` ( `id` int(11) NOT NULL AUTO_INCREMENT, `svg` varchar(10000) NOT NULL, `iconId` int(11) DEFAULT NULL, PRIMARY KEY (`id`), KEY `iconId` (`iconId`), CONSTRAINT `caches_ibfk_1` FOREIGN KEY (`iconId`) REFERENCES `icons` (`id`) ON DELETE SET NULL ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='原始上传图标文件缓存表';
description
字段ALTER TABLE projects ADD description varchar(255) default NULL;
updateAt
字段ALTER TABLE projects ADD updateAt datetime default NULL;
publicName
字段ALTER TABLE projects ADD publicName varchar(255) default NULL;
项目更新 #
在项目目录(一般是在第一层 src 目录下)下运行
$ yicon update
提示:输入当前版本号 #
默认读取 package.json 文件中的 version 字段,但因为 v1.0.2 及之前的版本,package.json 中的 version 和实际版本不匹配,所以需要手动输入下正确版本
升级预处理 #
yicon 构建工具自动进行预处理:
- 将本地代码进行打包压缩,存储到
/backups
目录下,方便代码回滚 - 根据输入的版本号,进行本地代码,GitHub 上对应版本号的代码和最新的版本的代码进行 diff,提示用户本地代码与最新版本的代码间是否存在冲突,如果存在冲突,直接进行提示,针对不冲突、可以直接替换的文件,直接提示
提示:是否对上述文件进行替换 #
无论在预处理过程中,是否存在冲突,都可以针对可以直接替换的文件,进行直接替换
安装依赖 #
与部署类似,在升级过程中,可能安装或卸载了部分模块,所以需要重新进行 install
项目编译 #
与部署类似,安装依赖完成之后,会在 /src
目录下执行 npm run build
进行静态资源编译;如果编译出错,可以去项目路径中手动执行 npm run build
编译。
最后 #
如果在升级预处理过程中,没有冲突的文件,同时在上述过程中的所有操作都成功完成,则可以执行 ./start.sh
进行项目启动,或者自行选择使用 pm2 等工具进行启动;如果存在冲突,则需要先手动修改冲突的文件并检查无误后,再进行项目启动。