为了重新开始写点东西,而且换了电脑,所以将博客进行了一次迁移,在此记录一些坑,其实真的很简单!,本质上就是拷贝!
安装必备环境
有关一些环境的准备在hexo 的安装和配置说明过了,当然,这不完全相同,我这次在新电脑中并没有采用yarn来安装,不过这个无所谓。
简单说明一下需要安装git客户端
和nodejs
,至今的npm一般在安装nodejs中都已经包含了。
安装hexo
1 | npm install hexo-cli -g |
git关联github
首先,生成本地密钥(如果已经有了则不需要),这会在本地用户的.ssh
文件夹中出现一个私钥id_rsa
(妥善保管!),以及一个公钥id_rsa.pub
1 | ssh-keygen -t rsa -C "example@example.com" |
然后在个人Github的Settings中找到侧边SSH and GPG keys,点击New SSH key
,将公钥id_rsa.pub
中的内容复制到其中即可。
会发个邮件给你的邮箱,点击确认一下。
在git中输入
1 | ssh git@github.com |
新建空文件夹用来做为博客使用
初始化hexo至空文件夹hexo_blog
中。
1 | hexo init hexo_blog |
切换至hexo_blog
文件夹中
1 | cd hexo_blog |
尝试启动hexo
1 | hexo s |
很不幸,我出现了一些问题
1 | ERROR Cannot find module 'hexo' from 'E:\hexo_blog' |
于是我按照他的建议,执行了如下命令:
1 | rm -rf node_modules && npm install --force |
很不幸,又出了问题:
1 | npm WARN using --force I sure hope you know what you are doing. |
经查找,发现只需要清除一下npm的cache即可,原文在此
1 | npm cache clean --force |
接下来再本地hexo s
启动一下服务试试看,发现大功告成!
以上步骤大致如此,不行就删了博客文件夹重来,反正也是空空的!
放心大胆的试吧
迁移博客
实际上只需要将原电脑上的文章和一些配置拷贝过来即可,主要是三个文件夹和一个配置文件:
1 | scaffolds |
首先清除public中的内容,然后重新再生成内容,并发布
1 | hexo clean |
完成
OK,至此就完成了,本质上也就是重新搭建博客,然后将配置文件和已经有的内容给拷贝过来就可以了,也没有很麻烦嘛!
关于一些小问题
迁移之后有很多东西可能跟之前不一样了,包括版本,安装的包之类的,所以还需要根据具体情况来自己踩坑,目前我发现了两个。
插件都是需要自己在新设备上重新安装的,这个没有在上面的步骤中拷贝过来!!
本地图片上传失败
原本安装的hexo-asset-image
插件不能使用了,重新安装后出现了严重警告和错误,经过查找资料发现是该插件不能用了,所以采用其他方法。参考解决 hexo5 本地图像上传后无法显示的问题
首先,卸载安装的hexo-asset-image
;
1 | npm uninstall hexo-asset-image --save |
然后,同样修改修改博客配置文件_config.yml
中的 post_asset_folder
为true
;
1 | post_asset_folder: true |
最后,安装post_asset_folder
。
1 | post_asset_folder: true |
在之后在博客中就正常使用原方法传文件即可。
主题中添加搜索功能
安装hexo-generator-searchdb
插件:
1 | npm install hexo-generator-searchdb --save |
首先修改博客配置文件_config.yml
,如下:
1 | search: |
然后,修改主题配置文件_config.yml
如下:
1 | local_search: |