先全局安装hexo
npm install hexo
去gitlab上把博客项目刷下来,
image.png
保存到本地一个文件夹下,然后在这个文件夹所在位置git bash here。
新建文章
全局安装 hexo
$ hexo new "post-001" //新建文章
$ hexo new draft "post-001" //新建草稿
懒得全局安装 hexo
$ npm run new-p -- "post-001" //新建文章
$ npm run new-d -- "draft-001" //新建草稿
新建文章成功后会在source/_posts目录下生成文章对应的markdown文件 post-001.md,
新建草稿成功会在 source/_drafts 目录下生成文章对应的 markdown 文件 draft-001.md,
修改该文件内容即可.
注意: 新建指令后跟随的名称既是 markdown 文件名, 访问该文章的 url 中最后一级路径同样使用该名称.
So, 统一使用英文名称.
启动本地server,及时查看文章页面
全局安装 hexo
$ hexo server
懒得全局安装 hexo
$ npm run server
注意: npm scripts 中的 server 命令已增加 --draft 参数, So, 本地服务启动后草稿箱中的文章能够展示出来, 部署的时候不要忘了 发布
More info: 本地服务器
发布草稿
全局安装 hexo
$ hexo publish "draft-001"
懒得全局安装 hexo
$ npm run publish -- "draft-001"
生成静态资源文件并部署至GitHub pages
这一步我说一下
一开始我的配置文件里是https方式的,是下图的方式
deploy:
type: git
repo: https://github.com/QiFuFE/qifufe.github.io
把这段地址复制在浏览器打开
image.png
选择Use SSH,然后copy下面的地址
在项目的_config.yml文件里修改参数,就是把repo改为刚刚复制的ssh。
Https方式和SSH 方式的区别:
如果程序包比较大,HTTPS上传可能会失败,不稳定,SSH方式相对稳定一些。使用SSH,客户端与服务器的链接更安全。
至于HTTPS每次都需要登录密码的事,
HTTPS:不管是谁,拿到URL随便clone,但是每次push都要验证用户名和密码。
SSH:clone的项目必须是你拥有的,或者你是管理员,而且需要在clone钱添加SSH key,SSH在push的时候,不需要输入用户名的,如果在配置SSH key的时候设置了密码,则需要输入密码,否则不用。
关于ssh key 的生成去别地看吧。
deploy:
type: git
repo: git@github.com:QiFuFE/qifufe.github.io.git
然后就可以执行下面的命令将文章推上GitHub了。
全局安装 hexo
$ hexo g -d
懒得全局安装 hexo
$ npm run deploy
出毛病时可以先清理下输出
全局安装 hexo
$ hexo clean
懒得全局安装 hexo
$ npm run clean
另:图片资源存在阿里云OSS,使用cdn.58qf.com域名访问。在/blog-images/ 目录下单独建立一级目录,各自的文章图片资源上传至该目录下, 图片名称需自行处理,文章中用markdown语法引入图片。
例如本地图片文件 blog-image-001.jpg 上传至 charles-2017-10-16 目录下, 完整的访问路径为 http://cdn.58qf.com/blog-images/charles-2017-10-16/blog-image-001.jpg
hexo文档地址
网友评论