Hello World

Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.

Quick Start

Create a new post

1
$ hexo new "My New Post"

More info: Writing

Run server

1
$ hexo s[erver]

More info: Server

Generate static files

1
$ hexo g[enerate]

More info: Generating

Deploy to remote sites

1
$ hexo d[eploy]

More info: Deployment

-

安装Nodejs,node

1.移除错误的node_modules

1
2
cd /usr/local/lib/
rm node_modules/ -rf

2 卸载nodejs:

1
sudo apt-get autoremove nodejs

3安装nodejs:

1
2
3
sudo apt-get install nodejs
sudo apt install nodejs-legacy
sudo apt install npm

更新npm的包镜像源,方便快速下载

1
2
sudo npm config set registry https://registry.npm.taobao.org
sudo npm config list

全局安装n管理器(用于管理nodejs版本)

1
sudo npm install n -g

安装最新的nodejs(stable版本)

1
2
sudo n stable
sudo node -v

使用Hexo

1
2
3
4
5
npm -v
node -v
sudo npm install -g hexo-cli
hexo -g
hexo server

安装hexo

创建博客所在目录

mkdir hexo

安装 Hexo

创建目录
mkdir hexo
切换目录
cd hexo
全局安装 Hexo,需要最高权限,记得输入root密码
sudo npm install -g hexo-cli
初始化 Hexo
hexo init

如果报错执行代码,不报错忽略

sudo npm config set user 0
sudo npm config set unsafe-perm true
sudo npm install -g hexo-cli

安装插件

npm install hexo-generator-index –save
npm install hexo-generator-archive –save
npm install hexo-generator-category –save
npm install hexo-generator-tag –save
npm install hexo-server –save
npm install hexo-deployer-git –save
npm install hexo-deployer-heroku –save
npm install hexo-deployer-rsync –save
npm install hexo-deployer-openshift –save
npm install hexo-renderer-marked –save
npm install hexo-renderer-stylus –save
npm install hexo-generator-feed –save
npm install hexo-generator-sitemap –save

测试安装成功

hexo server

git config

git config –global core.autocrlf false

git config –global core.safecrlf true

git config –global core.autocrlf true

#拒绝提交包含混合换行符的文件
git config –global core.safecrlf true

#允许提交包含混合换行符的文件
git config –global core.safecrlf false

#提交包含混合换行符的文件时给出警告
git config –global core.safecrlf warn

Hexo+GitPages 部署

hexo + latex = blog

Auto编译+用 GitHub Actions 自动化发布Hexo网站到 GitHub Pages - 掘金

手动部署

本文将使用 GitHub Actions 部署至 GitHub Pages,此方法适用于公开或私人储存库。若你不希望将源文件夹上传到 GitHub,请参阅 一键部署。

1 建立名为 <你的 GitHub 用户名>.github.io 的储存库,若之前已将 Hexo 上传至其他储存库,将该储存库重命名即可。
2 将 Hexo 文件夹中的文件 push 到储存库的默认分支,默认分支通常名为 main,旧一点的储存库可能名为 master。

  • 将 main 分支 push 到 GitHub:
1
$ git push -u origin main
  • 默认情况下 public/ 不会被上传(也不该被上传),确保 .gitignore 文件中包含一行 public/。整体文件夹结构应该与 范例储存库 大致相似。

3 使用 node –version 指令检查你电脑上的 Node.js 版本,并记下该版本 (例如:v16.y.z)
4 在储存库中建立 .github/workflows/pages.yml,并填入以下内容 (将 16 替换为上个步骤中记下的版本):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
.github/workflows/pages.yml
name: Pages

on:
push:
branches:
- main # default branch

jobs:
pages:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/checkout@v2
- name: Use Node.js 16.x
uses: actions/setup-node@v2
with:
node-version: "16"
- name: Cache NPM dependencies
uses: actions/cache@v2
with:
path: node_modules
key: ${{ runner.OS }}-npm-cache
restore-keys: |
${{ runner.OS }}-npm-cache
- name: Install Dependencies
run: npm install
- name: Build
run: npm run build
- name: Deploy
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public

5 当部署作业完成后,产生的页面会放在储存库中的 gh-pages 分支。
6 在储存库中前往 Settings > Pages > Source,并将 branch 改为 gh-pages。
前往 https://<你的 GitHub 用户名>.github.io 查看网站。

一键部署

以下教学改编自 一键部署。

  1. 安装 hexo-deployer-git。

  2. 在 _config.yml 中添加以下配置(如果配置已经存在,请将其替换为如下):

    1
    2
    3
    4
    5
    deploy:
    type: git
    repo: https://github.com/<username>/<project>
    # example, https://github.com/hexojs/hexojs.github.io
    branch: gh-pages
  1. 执行 hexo clean && hexo deploy 。
  1. 浏览 <GitHub 用户名>.github.io 检查你的网站能否运作。

在 GitHub Pages 上部署 Hexo | Hexo

自定义部署方案

主要有3个仓库:

  • 私有仓库Blog:存储 Hexo 项目文章以及源代码
  • 公共仓库hiyongz.github.io:存储编译之后的静态页面。
  • Gitee公共仓库:内容和hiyongz.github.io一样,只是使用的服务不同。

配置发布秘钥,用于将生成的静态博客文件 push 至 GitHub Pages 所在的仓库XXXXX.github.io:

1、生成秘钥

执行如下命令生成公钥和私钥,替换邮件地址为你的github邮箱地址,其实也可以不使用邮箱,这里只是为了便于辨识。

1
ssh-keygen -f hexo-deploy-key -t rsa -C "username@example.com"

命令执行后会生成两个文件:hexo-deploy-keyhexo-deploy-key.pub

2、将公钥添加到Github Pages仓库中

步骤:hiyongz.github.io仓库 -> Settings -> Deploy keys -> Add deploy key

  • Title设置为 HEXO_DEPLOY_PUB (可以根据自己喜好设置)
  • Key填写 github-deploy-key.pub 文件内容
  • 勾选 Allow write access 选项

3、将私钥添加到博客源码仓库中

步骤:博客仓库 -> Settings -> Secrets -> New repository secret

  • Name 填写 HEXO_DEPLOY_KEY
  • Value 填写 github-deploy-key 文件内容。

使用技巧

文档引用

CV绝对路径 /2020/03/16/CV/CV-GAN/

CV相对路径 ./2020/03/16/CV/CV-GAN/

使用自动链接插件:Hexo有一些插件可以帮助你更方便地在文章之间创建链接,例如hexo-abbrlink可以为每篇文章生成一个简短的、可记忆的链接标识符,使得链接更加简洁。