通过 GithubActions 实现自动化部署 Hexo

一、在自己电脑上新建一个文件夹,打开 git bash here,输入以下命令

# 生成秘钥
ssh-keygen -f github-deploy-key

之后会生成两个文件,

一个私钥文件为:github-deploy-key;

另一个公钥文件为:github-deploy-key.pub 

1、在 Hexo 工作目录 Github 源码仓库中指定私钥

步骤:依次打开自己存放博客源码的仓库,点击Settings->展开Secrets and variables->点击Actions->点击New repository secret;填写名称与粘贴私钥。

2、在 Hexo 站点目录 Github pages主页仓库中指定公钥

步骤:依次打开自己存放博客pages主页的仓库,点击Settings->Deploy keys->Add deploy key

Title处设置个名称,key处粘贴公钥。

注意事项:一定要勾选(Allow write access)允许写入后,再保存。

二、创建部署配置

1、在[自己博客根目录]新建.github文件夹,注意开头是有个.的。然后在.github 内新建 workflows 文件夹,再在 workflows 文件夹内新建 autodeploy.yml,在[自己博客根目录]/.github/workflows/autodeploy.yml 里面输入
name: 部署 Hexo 到 GithubPage
on:
  push:
    branches: [ "master" ]这里要更改为自己的源码仓库分支名称master或main
jobs:
  HexoDeploy:
    runs-on: ubuntu-latest
    strategy:
      matrix:
        node-version: [18.x]这里要更改为自己电脑安装的node.js版本,在终端用node -v查找
    steps:
    - uses: actions/checkout@v3
    - name: 使用 Node.js ${{ matrix.node-version }} 环境
      uses: actions/setup-node@v3
      with:
        node-version: ${{ matrix.node-version }}
    - name: 配置 SSH 环境和 Git 环境
      env:
        ACTION_DEPLOY_KEY: ${{ secrets.这里要接合前面的内容更改为自己源码仓库填写私钥时,所取的名称 }}
      run: |
        mkdir -p ~/.ssh/
        echo "$ACTION_DEPLOY_KEY" > ~/.ssh/id_rsa
        chmod 700 ~/.ssh
        chmod 600 ~/.ssh/id_rsa
        ssh-keyscan github.com >> ~/.ssh/known_hosts
        git config --global user.email "这里要填写自己github注册时所用的邮箱"
        git config --global user.name "这里要填写自己gitub的用户名"
    - name: 配置 Hexo 环境
      run: |
        export TZ='Asia/Shanghai'
        npm install hexo-cli -g
    - name: 下载 Npm 依赖
      run: |
        npm install
    - name: 部署博客
      run: |
        hexo d

初次提交:

git init #初始化
git remote add origin 这里接着填写自己github的SSH地址
git checkout -b main #main是项目分支名

--------------------------------------

非初次提交:


git add .
git commit -m "github action update"
git push origin main
 

  • 6
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
GitHub Actions是GitHub提供的一项功能,可以帮助开发者自动化执行各种任务。在Hexo博客中,可以使用GitHub Actions来自动部署Hexo博客。 有两个参考链接可以帮助你了解如何使用GitHub Actions来自动部署Hexo博客。第一个参考链接是《利用 Github Actions 自动部署 Hexo 博客》\[1\],它提供了详细的步骤和说明,可以帮助你了解如何设置GitHub Actions来自动部署Hexo博客。第二个参考链接是《利用github Actions自动同步项目到gitee并自动部署Gitee Pages》\[2\],它介绍了如何使用GitHub Actions将项目同步到Gitee并自动部署Gitee Pages。 在设置GitHub Actions时,你需要根据自己的情况进行一些配置。例如,你需要将`blog_source_branch`替换为你的博客源代码所在的分支,将`username`替换为你的GitHub用户名,将`username@email.address`替换为你的邮箱地址。此外,你还需要配置SSH密钥和Git全局配置。 具体的配置步骤可以参考上述两个参考链接中提供的内容。总的来说,你需要在GitHub仓库中创建一个`.github/workflows`目录,并在该目录下创建一个YAML文件,用于定义GitHub Actions的工作流程。在YAML文件中,你可以指定触发工作流程的事件、运行环境、任务步骤等。 在任务步骤中,你可以使用Hexo命令来清理、生成和部署Hexo博客。具体的命令可以参考上述参考链接中提供的示例。 希望以上信息对你有帮助!如果还有其他问题,请随时提问。 #### 引用[.reference_title] - *1* *2* [用GitHub Actions自动部署Hexo](https://blog.csdn.net/wbsu2004/article/details/122661116)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [hexo配合github action 自动构建(多种形式)](https://blog.csdn.net/jggnice/article/details/124773430)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值