加载中...

Hexo博客搭建进阶版


为什么选择 Gitlab

  1. GitHub部署存在的问题

    • 不能被百度爬虫爬取,很难被百度收录

    • 须本地生成静态网页后部署,并且很难异地或异机编辑

  2. GitLab的优点

    • 可被百度爬取内容,没有DNS污染

    • 在GitLab服务器自动化部署,可以在线编辑md文档后直接部署

    • 隐私保护程度高,仓库为私有仓库,但页面可以发布出去

    • 有中文支持,Settings->Preferences->Localization->Language 选择语言中文

移植博客并部署到 Gitlab上

3.1 在 Gitlab 上创建仓库

在 Gitlab 上创建一个新的仓库。您可以在 Gitlab 上创建一个新的仓库,仓库名称应该为 <username>.gitlab.io。其中,<username>是您的 Gitlab 用户名。一般来说仓库设定为私有就行。

注意配置 git 和 ssh 免密登录

配置git 配置ssh密钥

3.2 下载 Gitlab 仓库

git clone <git-repository-url>

3.3 将已有的博客复制到本地仓库

只需要复制scaffoldssourcethemes和一些配置文件到gitlab的本地仓库

 $ tree -L 2
.
├── scaffolds
│   ├── draft.md
│   ├── page.md
│   └── post.md
├── source
│   ├── _posts
│   ├── _drafts
├── themes
├── _config.yml
├── package.json
└── package-lock.json

注意需要卸载 hexo-deployer-git 及其相关配置文件,或者直接修改package.json

3.4 创建一个自动化部署文件

创建一个.gitlab-ci.yml 的文件,可以直接创建,也可以在网页端创建。

image: node:18.9.1

pages:
  cache:
    paths:
    - node_modules/

  script:
  - npm install hexo-cli -g
  - npm install
  - hexo clean
  - hexo generate
  - hexo deploy
  artifacts:
    paths:
    - public
  only:
  - main

3.5 部署到 Gitlab

git add .
git commit -m "update blog"
git push

以后每次异地修改只要 git pull,然后运行上面三条命令即可

3.6 修改 Pages 权限

进入设置,把Pages权限设置为everyone。非常重要!!

完成推送后在项目里点击 CI/CD 查看,显示成功部署即可由https://username.gitlab.io/访问你的博客


文章作者: JiJunhao
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 JiJunhao !
  目录