博客迁移记录
前言
为什么要迁移博客
之前的博客效果不是很满意(太丑),文章的质量也不是很满意(基本都是抄抄书,记记笔记),正好改头换面,希望后面能提高文章的质量。
从Hexo到Hugo
之前的博客一直用的是hexo,感觉部署起来确实有点慢,听说Hugo是用go写的(好感度++)而且部署起来还贼快(毕竟号称"The world’s fastest framework for building websites")。
hugo安装与配置
安装hugo
Mac用户的福音,只需一行:
brew install hugo
创建站点
hugo new site blog
然后我们就可以看到blog
目录下一堆文件和目录:
blog
├── archetypes # 主要是文档文件的模板,预定义了一些头部信息
│ └── default.md
├── config.toml # 配置文件
├── content # 内容文件
├── data # 可以存放一些JSON格式之类的数据
├── layouts # 生成html用的模板文件
├── static # 放一些图片、CSS、js等静态资源文件
└── themes # 存放主题
建议在这个时候进行git init
, 为后续的博客备份做准备
安装主题
我这里选择的是Hermit主题
git submodule add https://github.com/Track3/hermit.git themes/hermit
覆盖原有的配置文件
cp cp themes/hermit/exampleSite/config.toml ./
然后根据配置文件中的提示做相应的修改。
旧博文迁移
就博文的head是用hexo生成的,要转换成hugo的话,主要是时间的格式,还有多了draft
字段,所以只要改改head就可以了。
迁移到Github上
你可以首先在github上建立一个Blog
私有仓库,作为整个blog的备份。
将本地的仓库关联到github上:
git remote add origin git@github.com:<your-username>/Blog.git
然后public
和github pages相关联:
git submodule add -b master git@github.com <your-username>/<your-username>.github.io.git public
然后就可以进行部署了:
cd public
git add .
git commit -m "msg"
git push origin master
cd ..
我们可以把这个写进一个自动化脚本里:
# Generating your websites
echo "Generating websites"
# Build website
hugo -t hermit
# commit public
cd public
git add .
msg="update website `date`"
git commit --allow-empty -m "$msg"
# push to origin
git push origin master
# Back to Blog
cd ..
后续待做
为博客添加评论
希望为博客添加自动化部署,每次commit就能自动发布。