配置git

下载并安装git

  • git官网: git

  • 通过git --version命令可以查看git的版本以及查看git是否安装并配置成功

    shell
    1
    git --version

配置git

  • 通过git config 可以配置git的用户名和邮箱

    shell
    1
    2
    git config --global user.name "your_username"
    git config --global user.email your_email@domain.com
  • 通过git config --list可以查看所有配置

    shell
    1
    git config --list
  • 如果用了 –global 选项,那么更改的配置文件就是位于你用户主目录下的.gitconfig文件,以后你所有的项目都会默认使用这里配置的用户信息。

    gitconfig

  • 如果要在某个特定的项目中使用其他名字或者电邮,只要去掉 --global 选项重新配置即可,新的设定保存在当前项目的 .git/config 文件里。

  • 配置的git 的用户名和邮箱将用于记录和跟踪谁对项目作了修改

    git log

配置gitee

1.注册并登陆gitee账号

2.配置SSH key

  • 在git bash中输入下面命令, 生成公钥和密钥
shell
1
ssh-keygen -t rsa -C "xxxxx@xxxxx.com"

注意:这里的 xxxxx@xxxxx.com 只是生成的 sshkey 的名称,并不约束或要求具体命名为某个邮箱。
网上的大部分教程均要求使用gitee的注册邮箱,其初衷仅仅是为了便于辨识。

  • 按照提示完成三次回车,即可生成 ssh key

image-20220307154742180

  • 通过查看 ~/.ssh/id_rsa.pub 文件内容,获取到你的 public key
shell
1
2
cat ~/.ssh/id_rsa.pub  //查看SSH公钥
cat ~/.ssh/id_rsa //查看SSH私钥

image-20220307155435159

或者可以在C:\Users\xiaophai\.ssh目录下查看

image-20220307155806805

  • 复制生成后的 SSH公钥,通过**「头像」->「设置」->「安全设置」->「SSH公钥」->「添加公钥」** ,添加生成的 SSH公钥 添加到仓库中

image-20220307150917646

  • 添加后,在终端(Terminal)中输入
shell
1
ssh -T git@gitee.com # for gitee
shell
1
ssh -T git@github.com # for github

首次使用需要确认并添加主机到本机SSH可信列表。若返回 Hi XXX! You've successfully authenticated, but Gitee.com does not provide shell access. 内容,则证明添加成功。

image-20220307160419984

3.SSH简单介绍

  • https 和 SSH 的区别

    • 使用https url可以随意克隆github/gitee上的项目; 而SSH url只限于管理员, 且需要先添加 SSH 公钥, 否则无法克隆.
    • https url 在push的时候是需要验证用户名和密码;而使用SSH push,在配置SSH key后, 如果没有额外设置密码是不需要输入用户名和密码的.
  • SSH免登录原理简介

首先需要创建一对密匙(公钥和私钥),并把公密放在需要访问的服务器上。如果你要连接到SSH服务器,客户端软件就会向服务器发出请求,请求用你的密匙进行安全验证。服务器收到请求之后,先在该服务器上你的主目录下寻找你的公用密匙,然后把它和你发送过来的公用密匙进行比较,如果两个密匙一致,服务器就用公用密匙加密“质询”(challenge)并把它发送给客户端软件。客户端软件收到“质询”之后就可以用你的私人密匙解密再把它发送给服务器, 服务器确认解密后的"质询"正确后就会和客户端建立连接。

Hexo配置

1.安装node.js

  • Nodejs

  • 安装路径直接放在D:盘下, D:\nodejs
    不建议放到D:\Program Files\下, 因为这样后面安装npm包是需要管理员权限的, 很麻烦

  • 安装完成后可以在cmd中使用下面的命名查看是否安装成功

shell
1
2
node --version
npm --version
  • 在cmd中输入以下命令设置npm包的安装路径

参考博客:npm–npm 全局安装路径的修改和环境变量的配置

shell
1
2
3
4
5
6
#通过config list可以查看npm组件的安装路径
npm config list

#通过config set可以设置npm组件的安装路径
npm config set prefix "D:\nodejs\node_global"
npm config set cache "D:\nodejs\node_cache"

并要添加环境变量(即使已经添加了\nodejs目录还是需要再添加nodejs\node_global
image-20220307162026689

  • 更换npm安装源
shell
1
2
# 淘宝源
npm config set registry https://registry.npm.taobao.org
shell
1
npm config get registry

2.安装hexo

  • 在Git中输入npm命令安装Hexo:
shell
1
npm install hexo-cli -g
  • 查看hexo是否安装成功
shell
1
hexo --verison

部署博客(github)

参考: Quickstart for GitHub Pages

创建仓库

创建仓库, 命名格式: GithubUserName.github.io

注意点1: 这里注意在给 Repositories 取名时, 名字应该和 Github 的用户名一致, 这样网址不会出现两次用户名. 例如我的 Github 的用户名为 whut-zhangwx, 那么当我将仓库命名为 whut-zhangwx.github.io 时, 这样我得到的网址将会是 https://whut-zhangwx.github.io; 当我将仓库命名为 othername.github.io 时, 得到的网址为 https://whut-zhangwx.github.io/othername.github.io.

注意点2: 必须把 Repository Visibility 权限设为 Public (免费用户必须公开 Repository 网站才能被访问, 和 Github 文档说的不一样。自己试了设成 Private 直接404,改回 Public 几分钟后就OK了)

修改配置文件

修改博客根目录下的 _config.yml 文件

yml
1
2
3
4
5
6
7
8
9
10
# URL
## Set your site url here. For example, if you use GitHub Page, set url as 'https://username.github.io/project'
url: https://whut-zhangwx.github.io
...
# Deployment
## Docs: https://hexo.io/docs/one-command-deployment
deploy:
type: git
repo: https://github.com/whut-zhangwx/whut-zhangwx.github.io.git
branch: master

部署博客

分别执行下面的命令启动博客

bash
1
2
3
4
hexo clean     # 清理缓存
hexo generate # 编译
hexo server # 启动本地服务器
hexo deploy # 部署远端

也可以一行执行多条命令

bash
1
2
3
4
hexo clean && hexo generate && hexo server
# 先执行这三条命令在本地http://localhost:4000/blog/查看博客是否正确配置
hexo deploy
# 再执行hexo deploy推送到远端

Github Page

部署博客(gitee)

1.新建用于存放博客的文件夹, 在文件夹中右键Git Bash Here, 输入下面命令初始化博客目录

bash
1
hexo init

2.安装git部署插件

bash
1
npm install hexo-deployer-git

3.gitee中新建仓库

注意这里仓库的名字要和用户名一样

这样Gitee Page服务生成的网页地址没有后缀https://onexiaophai.gitee.io

否则会有后缀, 像这样https://onexiaophai.gitee.io/blog/
image-20220207105432925

4.修改站点_config配置文件

  • 站点_config配置文件在博客文件夹的根目录下
  • 打开_config, 在最下面添加 ( 注意冒号后的空格 )
    image-20220201224319267

其中的repo是仓库的下载地址
image-20220201223207132

  • 修改url为仓库的地址
    image-20220201224119484

其中的url为仓库Gitee Pages服务的网站地址
image-20220201224525091

  • titlelanguage也改一下

image-20220201225151621

5.启动博客

  • 分别执行下面的命令启动博客, 注意要在 bash 中执行, 不能在 powershell 中执行
bash
1
2
3
4
hexo clean     #清理缓存
hexo generate #编译
hexo server #启动本地服务器
hexo deploy #部署远端
  • 也可以一行执行多条命令
bash
1
2
3
4
hexo clean && hexo generate && hexo server
#先执行这三条命令在本地http://localhost:4000/blog/查看博客是否正确配置
hexo deploy
#再执行hexo deploy推送到远端

Gitee Pages服务界面更新网站

2024年5月期间,因服务维护调整,Gitee Pages 暂停提供服务,给您带来不便深感抱歉,感谢对 Gitee Pages 服务的支持。

image-20220201230020674
  • 更新博客
    .md文件放在~\source\_posts目录下, 再执行上面的操作, 并在Gitee Pages服务界面更新网站

  • 当LocalHost和远端界面不一样时,请按Shift+F5强制刷新页面(清除缓存)

更改语言

修改**站点配置文件_config.yml**

yaml
1
2
language: zh-CN  #中文
language: en #英文

设置作者昵称

编辑站点配置文件, 设置author字段为你的昵称

站点描述

编辑站点配置文件, 设置description字段为你的站点描述, 或者个性签名

数学公式渲染

参考博客:https://www.jianshu.com/p/7ab21c7f0674

  • 替换默认的渲染引擎hexo-renderer-markedhexo-renderer-kramed
c
1
2
3
//这个命令是在博客根目录下执行的,使用Git Bash Here
npm uninstall hexo-renderer-marked --save
npm install hexo-renderer-kramed --save
  • 进入~\node_modules\kramed\lib\rules\inline.js
    修改第11行的escape:的值, 这一步是在原基础上取消了对\,{,}的转义(escape)
javascript
1
2
//escape: /^\\([\\`*{}\[\]()#$+\-.!_>])/,
escape: /^\\([`*\[\]()#$+\-.!_>])/,

修改第20行的em:的值

javascript
1
2
//em: /^\b_((?:__|[\s\S])+?)_\b|^\*((?:\*\*|[\s\S])+?)\*(?!\*)/,
em: /^\*((?:\*\*|[\s\S])+?)\*(?!\*)/,
  • 进入主题目录~\themes\next\_config.yml, 打开_config.yml主题配置文件
    把mathjax默认的false修改为true
yaml
1
2
3
4
5
6
# MathJax Support
mathjax:
every_page: false

mathjax:
enable: true
  • 在需要数学公式渲染的.md文件开头添加mathjax: true
markdown
1
2
3
4
5
---
title: 数学公式渲染
date: 2022/3/8
mathjax: true
---

在需要用到公式的页面才加载Mathjax, 不需要渲染数学公式的页面就不启用, 这样访问速度不会受到影响

数学公式渲染Katex(推荐)

shell
1
npm i hexo-renderer-markdown-it-katex

markdown with preview enhanced 使用的就是 katex 进行数学公式的渲染

Hexo插件——自动摘要生成器

GitHub仓库:https://github.com/chekun/hexo-excerpt

  • 安装hexo-excerpt插件
js
1
npm install hexo-excerpt --save
  • 在站点配置文件中添加下面的代码
yaml
1
2
3
4
5
excerpt:
depth: 5
excerpt_excludes: []
more_excludes: []
hideWholePostExcerpts: true

设置文章英文链接

hexo生成的默认文章链接格式为permalink: :year/:month/:day/:title/
这种默认的配置缺点很明显,当文件名是中文的时候url链接里就有中文出现。
可以通过添加urlname字段实现文章的链接为英文,在md文件的Front-matter区域新增urlname属性,值为文章的英文title,参考如下:

markdown
1
2
3
4
5
---
title: Vscode+python环境配置
date: 2022-4-5
urlname: vscode+python-environment-configuration
---

再将博客站点配置文件下的permalink字段的值修改为:

yaml
1
2
##permalink: :year/:month/:day/:title/
permalink: :year/:month/:day/:urlname/