【原文链接】:https://blog.tecchen.xyz ,博文同步发布到博客园。

由于精力有限,对文章的更新可能不能及时同步,请点击上面的原文链接访问最新内容。

欢迎访问我的个人网站:https://www.tecchen.xyz 。

相关链接

前言

这里不多说Git作为版本控制系统的优势,Gitlab作为支持私有仓库的开源Git系统,另外开放了Pages的功能,可以实现个人静态博客的部署及访问。

本文仅将Hexo打包后的代码提交到Gitlab,并利用CI/CD发布到Gitlab Pages,实现可以通过 https://username.gitlab.io/projectname 或者 https://username.gitlab.io可以访问博客的目的。

创建仓库

Gitlab支持project page和user page两种pages,只需要创建对应的仓库即可。

如果想通过https://username.gitlab.io/projectname形式访问,需要创建projectname的仓库。

如果想通过https://username.gitlab.io,需要创建username.gitlab.io的仓库

代码发布

修改站点配置文件,找到deploy配置,将type设置为git,并填写自己的repo地址,分支默认为master即可。

deploy:
type: git
repo: git@gitlab.com:java4candy/java4candy.gitlab.io.git
branch: master

执行hexo clean && hexo d -g,即可将发布后的代码提交到Gitlab。

Gitlab 配置CI/CD

新建文件方式:

在Gitlab中,根据.gitlab-ci.yml模板New file并上传。

上传文件方式:

选择Upload file,将本地的.gitlab-ci.yml文件上传到Gitlab。

文件内容:

# This file is a template, and might need editing before it works on your project.
# Full project: https://gitlab.com/pages/plain-html
pages:
stage: deploy
script:
- mkdir .public
- cp -r * .public
- mv .public public
artifacts:
paths:
- public
only:
- master

上传后,Gitlab会自动校验.gitlab-ci.yml文件语法,校验通过后,自动执行。

另外,在左边菜单CI/CD->Pipelines中能够查看Pipeline、对应的Jobs及脚本的执行情况。

如果需要定时发布,可以使用Schedules创建Cron定时器。

最后在在Settings->Pages查看正确的的访问路径。

通过https://username.gitlab.io/projectname 或者 https://username.gitlab.io访问博客。

Hexo博客系列(三)-将Hexo v3.x个人博客发布到GitLab Pages的更多相关文章

  1. hexo搭建博客系列(三)美化主题

    文章目录 其他搭建 1. 添加博客图标 2. 鼠标点击特效(二选一) 2.1 红心特效 2.2 爆炸烟花 3. 设置头像 4. 侧边栏社交小图标设置 5. 文章末尾的标签图标修改 6. 访问量统计 7 ...

  2. java基础系列(三)---HashMap

    java基础系列(三)---HashMap java基础系列 java基础系列(一)---String.StringBuffer.StringBuilder java基础系列(二)---Integer ...

  3. java基础解析系列(三)---HashMap

    java基础解析系列(三)---HashMap java基础解析系列 java基础解析系列(一)---String.StringBuffer.StringBuilder java基础解析系列(二)-- ...

  4. hexo干货系列:(总纲)搭建独立博客初衷

    前言 我是一名程序员,以前知识整理都是整理在为知笔记上,博客用的比较少,更别说是使用独立博客,因为不会... 2016年过年在家期间偶然的机会萌发了自己要搭建一个属于自己的独立博客的想法,于是就有了下 ...

  5. hexo零基础搭建博客系列(一)

    关于其他搭建 [hexo4快速搭建博客(二)更换主题](https://blog.csdn.net/weixin_41800884/article/details/103750634)[hexo4快速 ...

  6. 手把手教从零开始在GitHub上使用Hexo搭建博客教程(三)-使用Travis自动部署Hexo(1)

    前言 前面两篇文章介绍了在github上使用hexo搭建博客的基本环境和hexo相关参数设置等. 基于目前,博客基本上是可以完美运行了. 但是,有一点是不太好,就是源码同步问题,如果在不同的电脑上写文 ...

  7. Hexo博客系列(二)-在多台机器上利用Hexo发布博客

    [原文链接]:https://www.tecchen.xyz/blog-hexo-env-02.html 我的个人博客:https://www.tecchen.xyz,博文同步发布到博客园. 由于精力 ...

  8. Hugo hexo 搭建博客系列1:自己的服务器

    hexo jekyll https://hexo.io/zh-cn/ http://theme-next.iissnan.com/getting-started.html Hexo 是高效的静态站点生 ...

  9. 三、hexo+github搭建个人博客的主题配置

    更换博客主题 主题可参考:https://hexo.io/themes/ hexo默认主题:Landscape 示例主题:Next 下载Next主题 进入Blog所在目录,输入下载命令 #进入Blog ...

随机推荐

  1. qt5.7 安装

    http://blog.csdn.net/liang19890820/article/details/53931813#安装-qt57 安装运行出错:qt vstool 指定qt安装路径 http:/ ...

  2. mysql导出导入sql文件方法(linux)

    一.导入导出.sql文件for Linux: 1.从mysql中导出数据库test: 在终端运行:mysqldump -h localhost -u root -p test > /home/c ...

  3. ADO.NET DataTable的复制(clone)

    using (SqlConnection conn = new SqlConnection("Data Source=.;Initial Catalog=test;Integrated Se ...

  4. wmi收集系统信息 发送到服务器打印

    #include "WMIManager.h" #include <vector> #include <string> #include <boost ...

  5. R语言中 fitted()和predict()的区别

    fitted是拟合值,predict是预测值.模型是基于给定样本的值建立的,在这些给定样本上做预测就是拟合.在新样本上做预测就是预测. 你可以找一组数据试试,结果如何. fit<-lm(weig ...

  6. Oracle EBS Export File Format

    Profile Option Name Site Application Responsibility Server Server Org User Remark Export MIME type t ...

  7. ERROR Function not available to this responsibility.Change responsibilities or contact your System Administrator.

    APPLIES TO: Navigation:  Help > Diagnostics > Custom Code > Personalize  or  Help > Diag ...

  8. 自我介绍和Github初次使用心得

    姓名:许洪科 班级:网络工程142 学号:1413042047 爱好:足球 编写过的程序:0 编写过的代码:几乎为0(大多数为网上直接复制的) Github注册过程:. 1:进入Github网站后点击 ...

  9. Github 的注册教程和初步使用体验

    我叫许晴,是网工143的学生,学号是1413042064,兴趣包括手绘,看书和手游.学习过c++和汇编语言课程,但在编程方面没什么独立实践经验. 我的Githup用户名是 XQ123 .下面是我在gi ...

  10. [PHP]socket的连接超时 与 读取/写入超时

    socket处理时有两种超时 , 分为连接超时 和 读取/写入数据超时 1. stream_socket_client 函数中的超时时间是连接超时 , 默认是php.ini中的default_sock ...