hexo 工具箱
hexo本地文件同步到github
github新建分支,必须新建分支,血泪教训
将新分支设置为默认分支
将新分支clone到本地新文件夹A中
删除除了.git之外的所有文件。.git文件夹是隐藏文件夹
将本地文件除了.deploy_git和.git两个文件之外的所有文件全部复制,并粘贴到A
修改.gitignore文件中忽略的文件夹。因为我用的主题决定了我需要保留node_modules,所以将其中的/node_modules删除
1
2
3
4git add .
git commit -m "add branch"
git push
之后每次更新完博客,记得重复步骤7
在新电脑上clone博客文件
安装git,安装nodejs,配置ssh key,安装hexo
clone github 上的仓库
1
2
3cd xxx.github.io
npm install
npm install hexo-deployer-git --save1
2hexo g
hexo d
每次打开博客文件夹,都需要同步一下。
1 | |
创建新文档
1 | |
例如 hexo new mypage utils
意思是创建一个以mypage为模板的博客文件,名字叫做utils.md
注意 mypage是我自己定义的,自带的只有post,draft,page三种,默认是post
创建草稿不发布
创建草稿mydraft.md
1
hexo new draft mydraft预览草稿
1
hexo server --draft发布草稿mydraft.md
1
hexo publish draft mydraft
# 创建文章资源文件夹
在根目录下的_config.yml中设置:
1 | |
然后新建post时就会产生资源文件夹
添加PDF页面
新建一个html文件在post的资源文件夹中,写入:
1 | |
然后再资源文件夹中放入paper.pdf,并在文章中用超链接引用这个html文件。注意,在文章中默认路径在资源文件夹中。
hexo 报错
最近更新了CV page,然后在
1 | |
时会报错:
err: Error: Cannot find module ‘./db.json’ Require stack: - D:-lc.github.io_modules-db.js - D:-lc.github.io_modules.js - D:-lc.github.io_modules.js - D:-lc.github.io_modules-server .js - D:-lc.github.io_modules-server.js
Chat老师说是:
真正坏掉的不是
hexo clean,而是hexo-server依赖链里的mime-db包缺了db.json:mime-db/index.js会require('./db.json'),但你的node_modules\mime-db\db.json不存在,于是触发MODULE_NOT_FOUND,进而导致hexo-server插件加载失败。这个现象在 Hexo 的 issue 里也有同款(并且同样会出现“报错但后面仍然 Deleted database/public folder”)
解决办法是,根目录下:
1 | |
如果还是不行,我建议直接复制工程到目标电脑上,保留.git文件夹