• Github Pages 的特性来部署由 Hexo 框架渲染生成的静态博客


    • 准备环境
    • 安装 Hexo
    • 注册 Github
    • 配置 SSH key
    • 部署到 Github
    • 开始写作
    • 主题设置
    • 个性化主题
    • 添加评论功能

    关于这篇写的不太全,可以看这篇

    https://www.cnblogs.com/lzjloveit/p/14385971.html

    环境准备

    shiyanlou:project/ $ git version [18:28:15]
    git version 2.7.4
    shiyanlou:project/ $ node -v [18:28:24]
    v12.14.1
    shiyanlou:project/ $ npm -v [18:28:28]
    6.13.4

    shiyanlou:project/ $ npm install -g hexo-cli [18:28:31]
    /usr/sbin/nodejs/bin/hexo -> /usr/sbin/nodejs/lib/node_modules/hexo-cli/bin/hexo
    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@2.3.2 (node_modules/hexo-cli/node_modules/fsevents):
    npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.3.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

    + hexo-cli@4.2.0
    added 65 packages from 337 contributors in 3.564s
    shiyanlou:project/ $ [18:28:54]

    shiyanlou:project/ $ hexo init blog [18:28:54]
    INFO Cloning hexo-starter https://github.com/hexojs/hexo-starter.git
    INFO Install dependencies
    (node:389) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead.
    warning hexo-renderer-stylus > stylus > css-parse > css > urix@0.1.0: Please see https://github.com/lydell/urix#deprecated
    warning hexo-renderer-stylus > stylus > css-parse > css > source-map-resolve > urix@0.1.0: Please see https://github.com/lydell/urix#deprecated
    warning hexo-renderer-stylus > stylus > css-parse > css > source-map-resolve > resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated
    warning Your current version of Yarn is out of date. The latest version is "1.22.5", while you're on "1.7.0".
    INFO Start blogging with Hexo!
    shiyanlou:project/ $ cd blog [18:29:28]
    shiyanlou:blog/ $ ls [18:29:30]
    _config.landscape.yml node_modules scaffolds themes
    _config.yml package.json source yarn.lock
    shiyanlou:blog/ $ npm install

    shiyanlou:blog/ $ hexo generate [18:30:01] 生成文件
    INFO Validating config
    INFO Start processing
    INFO Files loaded in 235 ms
    INFO Generated: archives/index.html
    INFO Generated: archives/2021/index.html
    INFO Generated: archives/2021/02/index.html
    INFO Generated: index.html
    INFO Generated: js/script.js
    INFO Generated: fancybox/jquery.fancybox.min.css
    INFO Generated: css/style.css
    INFO Generated: 2021/02/06/hello-world/index.html
    INFO Generated: css/fonts/fontawesome-webfont.woff2
    INFO Generated: css/fonts/FontAwesome.otf
    INFO Generated: css/fonts/fontawesome-webfont.woff
    INFO Generated: fancybox/jquery.fancybox.min.js
    INFO Generated: css/fonts/fontawesome-webfont.eot
    INFO Generated: js/jquery-3.4.1.min.js
    INFO Generated: css/fonts/fontawesome-webfont.ttf
    INFO Generated: css/images/banner.jpg
    INFO Generated: css/fonts/fontawesome-webfont.svg
    INFO 17 files generated in 753 ms
    shiyanlou:blog/ $ hexo server -p 8080 [18:30:13]
    INFO Validating config
    INFO Start processing
    INFO Hexo is running at http://localhost:8080 . Press Ctrl+C to stop. 本地部署

    hexo generate ---> hexo g # 生成页面文件

    hexo server ---> hexo s # 启动服务预览

    hexo server -p 8080 # 指定端口运行

    hexo deploy ---> hexo d # 部署

    hexo clean # 清除缓存,若是网页正常情况下可以忽略这条命令

    注册 Github

    注意: 仓库名必须是 <username>.github.io ,如果你的 github 名是 David,那么你的仓库名必须是 David.github.io 。

    shiyanlou:blog/ $ ssh-keygen -t rsa -C "m18611694189@163.com" [18:33:34]
    Generating public/private rsa key pair.
    Enter file in which to save the key (/home/shiyanlou/.ssh/id_rsa):
    Created directory '/home/shiyanlou/.ssh'.
    Enter passphrase (empty for no passphrase):
    Enter same passphrase again:
    Your identification has been saved in /home/shiyanlou/.ssh/id_rsa.
    Your public key has been saved in /home/shiyanlou/.ssh/id_rsa.pub.
    The key fingerprint is:
    SHA256:MwfPH/PtoLyM850+d6vJB1NRjpJk0Hnj7cGNTKGMxzQ m18611694189@163.com
    The key's randomart image is:
    +---[RSA 2048]----+
    | .oE...o|
    | Bo+++ |
    | . . B=o++|
    | + . .++o|
    | S + o ...|
    | + . * ..|
    | . = .|
    | .+.oo=o|
    | .o***++|
    +----[SHA256]-----+
    shiyanlou:blog/ $ cat ~/.ssh/id_rsa.pub [18:34:02]
    ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDe3Ctbo/MTPzuBY26IcoACLLtxQsOR8OWDgNw03DzHNpIrqB4boRQWUC26+b1nNV+GHXZmHtzoIw+xjx3LBGaxsSxJBevNnYentXU8WN7/N8PfkbzK1SvY2q0cDTdPR+StDDHz+u42xPRT+oGG9l++cg+9v2iRIUl3edTe0ioo9WI4nxTOzpTMMfBVbcH4tiCkAbsD/nGS/rz6dcd3JjFr2iTRxdu0TZ7QF3nofpIo3q+qeTT6Xa7mPuFh3pxB1CdM86rq+/n4CGUcsAIabnuj76YdIobTycAQ0sUoHKXoDVU0PHcvXZi4q31142zXK1XZyZDV/CYk/Raqx9+bx5jX m18611694189@163.com
    shiyanlou:blog/ $ [18:34:14]

    shiyanlou:blog/ $ ssh -T git@github.com [18:34:14]
    The authenticity of host 'github.com (52.74.223.119)' can't be established.
    RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.
    Are you sure you want to continue connecting (yes/no)? yes
    Warning: Permanently added 'github.com,52.74.223.119' (RSA) to the list of known hosts.
    Hi LIZEJU! You've successfully authenticated, but GitHub does not provide shell access.

    config.yml 

    deploy:
    type: git
    repo: git@github.com:LIZEJU/LIZEJU.github.io-.git
    branch: master
     


    shiyanlou:blog/ $ npm install hexo-deployer-git --save
    npm WARN deprecated highlight.js@9.18.5: Support has ended for 9.x series. Upgrade to @latest
    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@2.3.2 (node_modules/fsevents):
    npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.3.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

    + hexo-deployer-git@2.1.0
    updated 1 package in 2.539s

    14 packages are looking for funding
    run `npm fund` for details

    shiyanlou:blog/ $ git clone git@github.com:LIZEJU/LIZEJU.github.io-.git
    正克隆到 'LIZEJU.github.io-'...
    Warning: Permanently added the RSA host key for IP address '13.250.177.223' to the list of known hosts.
    remote: Enumerating objects: 3, done.
    remote: Counting objects: 100% (3/3), done.
    remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
    接收对象中: 100% (3/3), 完成.
    检查连接... 完成。

    开始写作

    shiyanlou:blog/ $ hexo new "heox学习日记" [18:39:17]
    INFO Validating config
    INFO Created: /home/project/blog/source/_posts/heox学习日记.md
    shiyanlou:blog/ $ hexo g -d [18:39:55]
    INFO Validating config
    INFO Start processing
    INFO Files loaded in 183 ms
    INFO Generated: 2021/02/06/heox学习日记/index.html
    INFO Generated: archives/2021/02/index.html
    INFO Generated: 2021/02/06/hello-world/index.html
    INFO Generated: archives/2021/index.html
    INFO Generated: archives/index.html
    INFO Generated: index.html
    INFO 6 files generated in 76 ms
    INFO Deploying: git
    INFO Setting up Git deployment...
    初始化空的 Git 仓库于 /home/project/blog/.deploy_git/.git/

    *** Please tell me who you are.

    Run

    git config --global user.email "you@example.com"
    git config --global user.name "Your Name"

    to set your account's default identity.
    Omit --global to set the identity only in this repository.

    fatal: empty ident name (for <shiyanlou@2bc7e46ce263.(none)>) not allowed
    FATAL {
    err: Error: Spawn failed
    at ChildProcess.<anonymous> (/home/project/blog/node_modules/hexo-deployer-git/node_modules/hexo-util/lib/spawn.js:51:21)
    at ChildProcess.emit (events.js:223:5)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12) {
    code: 128
    }
    } Something's wrong. Maybe you can find the solution here: %s https://hexo.io/docs/troubleshooting.html
    shiyanlou:blog/ $ w [18:40:43]
    w: 63 column window is too narrow
    shiyanlou:blog/ $

    shiyanlou:blog/ $ git config --global user.email "m18611694189@163.com"
    shiyanlou:blog/ $ hexo g -d [18:43:04]INFO Validating config
    INFO Start processing
    INFO Files loaded in 172 ms
    INFO 0 files generated in 97 ms
    INFO Deploying: git
    INFO Clearing .deploy_git folder...
    INFO Copying files from public folder...

    shiyanlou:blog/ $ hexo new "heox学习日记2" [18:45:25]INFO Validating config
    INFO Created: /home/project/blog/source/_posts/heox学习日记2.md
    shiyanlou:blog/ $ hexo g -d [18:45:33]INFO Validating config
    INFO Start processing
    INFO Files loaded in 173 ms
    INFO Generated: 2021/02/06/heox学习日记2/index.html
    INFO Generated: 2021/02/06/heox学习日记/index.html
    INFO Generated: 2021/02/06/hello-world/index.html
    INFO Generated: archives/index.html
    INFO Generated: archives/2021/index.html
    INFO Generated: archives/2021/02/index.html
    INFO Generated: index.html
    INFO 7 files generated in 38 ms
    INFO Deploying: git
    INFO Clearing .deploy_git folder...
    INFO Copying files from public folder...

    deploy:
    type: git
    repo: https://github.com/LIZEJU/LIZEJU.github.io-.git
    branch: master
     
     
     

    shiyanlou:LIZEJU.github.io-/ (main*) $ git add . [18:52:09]
    shiyanlou:LIZEJU.github.io-/ (main*) $ git commit -m "1"

    *** Please tell me who you are.

    Run

    git config --global user.email "you@example.com"
    git config --global user.name "Your Name"

    to set your account's default identity.
    Omit --global to set the identity only in this repository.

    fatal: empty ident name (for <m18611694189@163.com>) not allowed

    解决:

    git config --global user.email "m18611694189@163.com"
    42 git commit -m "1"
    43 git config --global user.name "m18611694189@163.com"
    44 git commit -m "1"

    shiyanlou:LIZEJU.github.io-/ (main) $ git push [18:56:13]
    warning: push.default 尚未设置,它的默认值在 Git 2.0 已从 'matching'
    变更为 'simple'。若要不再显示本信息并保持传统习惯,进行如下设置:

    git config --global push.default matching

    若要不再显示本信息并从现在开始采用新的使用习惯,设置:

    git config --global push.default simple

    当 push.default 设置为 'matching' 后,git 将推送和远程同名的所有
    本地分支。

    从 Git 2.0 开始,Git 默认采用更为保守的 'simple' 模式,只推送当前
    分支到远程关联的同名分支,即 'git push' 推送当前分支。

    参见 'git help config' 并查找 'push.default' 以获取更多信息。
    ('simple' 模式由 Git 1.7.11 版本引入。如果您有时要使用老版本的 Git,
    为保持兼容,请用 'current' 代替 'simple')

    Username for 'https://github.com': m18611694189@163.com
    Password for 'https://m18611694189@163.com@github.com':
    对象计数中: 35, 完成.
    Delta compression using up to 4 threads.
    压缩对象中: 100% (28/28), 完成.
    写入对象中: 100% (35/35), 886.36 KiB | 0 bytes/s, 完成.
    Total 35 (delta 6), reused 0 (delta 0)
    remote: Resolving deltas: 100% (6/6), done.
    To https://github.com/LIZEJU/LIZEJU.github.io-.git
    4aaa783..77746c4 main -> main
    shiyanlou:LIZEJU.github.io-/ (main) $ hexo g -d [18:56:48]
    INFO Validating config
    INFO Start processing
    INFO Files loaded in 145 ms
    INFO Generated: 2021/02/06/heox学习日记/index.html
    INFO Generated: archives/index.html
    INFO Generated: archives/2021/index.html
    INFO Generated: archives/2021/02/index.html
    INFO Generated: 2021/02/06/hello-world/index.html
    INFO Generated: index.html
    INFO Generated: 2021/02/06/heox学习日记2/index.html
    INFO 7 files generated in 77 ms
    INFO Deploying: git
    INFO Clearing .deploy_git folder...
    INFO Copying files from public folder...

    稍等一会,在浏览器访问网址:https://你的用户名.github.io 就会看到你的博客了

    https://LIZEJU.github.io-

    修改github仓库名

    https://LIZEJU.github.io

    https://lizeju.github.io/2021/02/06/heox%E5%AD%A6%E4%B9%A0%E6%97%A5%E8%AE%B0/

    访问:

    https://lizeju.github.io/archives/

    主题设置

    https://github.com/iissnan/hexo-theme-next

    git clone https://github.com/iissnan/hexo-theme-next themes/next

    打开 _config.yml 这个文件,找打 theme 属性,更改属性值:

    theme: next
    
     

    并且修改一下作者,网页标题等信息。

    执行如下命令,先在环境进行测试,如果运行成功,执行命令到博客上。

    hexo g
    hexo s -p 8080

    主题风格设置

    Next 提供了四种主题,可以在主题配置文件 blog/themes/next/_config.yml 文件中进行选择,分别是 MuseMistPiscesGemini

    添加头像图片

    在七牛上上传图片,复制外链,在themes/next/_config.yml中修改配置:

    添加社交账号

    themes/next/_config.yml中修改配置:

    添加背景动画

    themes/next/_config.yml中修改配置,这里选了canvas_next,有四种效果,根据自己的喜好选择。

    菜鸟的自白
  • 相关阅读:
    DV型、OV型、EV型证书的主要区别
    HTTPS混合内容解析
    Resin 4.0 部署SSL证书
    中间证书的使用
    IBM LOTUS DOMINO 9 部署SSL证书
    F5部署SSL证书
    百度云部署SSL证书
    阿里云部署SSL证书
    加密,解密web.config数据库连接字符串
    不记得oracle管理员密码,更改oracle sys密码的方法
  • 原文地址:https://www.cnblogs.com/lzjloveit/p/14382559.html
Copyright © 2020-2023  润新知