本站的博客系统基于 Hexo.js框架,因为在对应的Github仓库中已经设置好了Github Actions,所以不在本地安装Hexo也可以发布博客。以下为具体步骤:
使用说明
- 注册Github帐号;
- 加入Github SUMSC组织 sumsc-caa(请联系技术组组长);
- 拉取仓库(需要事先在Github设置好ssh公钥):
1
$ git clone git@github.com:sumsc-caa/WebSite.git
- 创建文章文件:在
source/_posts/
下创建markdown格式的博客文件(.md
),并在文件顶部插入 frontmatter。frontmatter为yaml格式,可以参照Hexo的官方文档,或是参照已有文章的frontmatter编写,例如本文的 frontmatter:1
2
3
4
5
6---
date: 2023-02-26 11:30:05
title: 博客帮助文档(更新)
categories:
- 技术博客
--- - 编写文章正文,
- 将更改推送至源码仓库:
请勿频繁推送,Github Actions具有一定的免费额度(整个组织有2000分钟每月的免费构建时间),超过这个额度则会产生费用。成功推送后,Github Actions会自动构建博客并发布至 https://sumsc-caa.github.io,这个过程需要一定时间(大约一分钟),请耐心等待,在此期间不要推送新的更改。1
2
3
4$ git pull # push前先pull,如果出现冲突需要自己merge
$ git add sources/_posts/* # 只更新posts下的文件
$ git commit -m "<message>" # commit message要写清楚自己做了什么哦
$ git push origin main # 推送至源码仓库
关于静态文件
图像文件有两种处理方法:
- 放置在
source/images
内,并在文章中使用
引用图片,例如这篇文章。若使用这种方法请尽量降低图像的体积。 - 上传至国内的免费图床,例如这篇文章。
非图像文件请放在 source/assets
内,发布后对应的URL为/assets/<filename>
,例如这篇文章。
此外,如果是代码文件,也可以考虑使用 Github Gist,例如这篇文章。
关于实时预览
使用实时本地预览需要在本地安装好Hexo及其运行环境,这首先需要在本地配置好node.js,这一步请参考网络上的教程。装好node.js后,在本仓库的目录下执行(或者用你常用的包管理工具)
1 | $ npm i |
安装本项目的依赖(包括hexo)。然后使用
1 | $ npm server |
启动预览服务器,默认的预览地址为 http://localhost:4000 。作出更改后保存,并在浏览器内刷新对应的页面即可看到更改后的结果。预览的效果与实际部署的效果是完全一致的。