当前位置: 代码迷 >> 综合 >> 2021の9月の hexo+github搭建博客全过程
  详细解决方案

2021の9月の hexo+github搭建博客全过程

热度:22   发布时间:2023-11-27 02:32:12.0

文章目录

  • 环境搭建
    • 安装node.js
    • 安装Hexo框架
    • 安装git
  • 使用Hexo搭建博客
    • 创建
    • 初始化
    • 预览博客
    • 更新文章
  • 生成SSH KEYS
    • 检查是否已安装ssh
    • 生成ssh key并进行绑定
    • 测试ssh是否绑定成功
  • 将博客部署到github
    • 创建一个仓库
    • 安装hexo-deployer-git插件
    • 修改配置文件
    • 将本地项目推送到github上
    • 更换主题

环境搭建

安装node.js

安装完之后,测试一下是否安装成功

node -v
npm  -v     		# npm是 node的第三方包管理工具

然后安装nrm

npm i nrm -g     		# g是全局安装

nrm ls可以查看当前使用的镜像源

安装Hexo框架

npm install -g hexo-cli

验证是否安装成功

hexo -v

安装git

验证是否安装成功

git --version

使用Hexo搭建博客

创建

创建一个 blog 文件夹,并在该文件夹下打开CMD工具

初始化

hexo init					# 完成后会在blog文件夹下生成一些初始化的文件

预览博客

hexo s						# 运行hexo服务预览博客

更新文章

hexo new Your_article_name
hexo clean  		# 清理一下上一次服务的缓存
hexo g				# 重新解析一下项目文件
hexo d

生成SSH KEYS

SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性,建立在应用层基础上的协议。
利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。SSH提供两种级别的安全验证:第一种级别(基于口令的安全验证):只要你知道自己帐号和口令,就可以登录到远程主机。
所有传输的数据都会被加密,但是不能保证你正在连接的服务器就是你想连接的服务器。
可能会有别的服务器在冒充真正的服务器,也就是受到“中间人”这种方式的攻击。第二种级别(基于密钥的安全验证):ssh-keygen:需要依靠密钥,这里的密钥是非对称密钥。

随便进入任何一个文件夹,然后右键Git Bash Here

检查是否已安装ssh

Git Bash下执行

ssh

生成ssh key并进行绑定

ssh-keygen -t rsa -C"github对应的邮箱地址"			# 命令执行后按 34次回车。

-t即指定密钥的类型,密钥的类型有两种,一种是RSA,一种是DSA

RSA: RSA加密算法是一种非对称加密算法,是由三个麻省理工的牛人弄出来的,RSA是他们三个人姓的开头首字母组合。
DSA: Digital Signature Algorithm (DSA)是Schnorr和ElGamal签名算法的变种。

之后在C:\Users\管理员下找到.ssh文件夹,将文件夹下的id_rsa.pub文件中的内容全选复制,来到GitHub的settings下的SSH and GPG keys
新建一个SSH key,名字无所谓,key中直接粘贴,然后点添加。

测试ssh是否绑定成功

ssh -T git@github.com 

将博客部署到github

创建一个仓库

利用 github上的仓库作为我们的服务器去存储我们博客里面的内容。

安装hexo-deployer-git插件

npm install --save hexo-deployer-git				# save表示仅在本项目中安装

修改配置文件

找到_config.yml文件
deploy:type: 'git'repo: 对应的仓库地址branch: main

将本地项目推送到github上

hexo d

这个时候会让输入github的账号密码,由于github的更新,此时我们输入密码时实际要输入Token令牌,而且有时候不能复制粘贴过去。

更换主题

git clone 主题的github仓库地址 themes/主题名字				# 注意要在blog文件夹下的CMD中执行举例:
git clone next主题的github仓库地址 themes/next

下载完成之后要去将_config.yml文件中的 theme 值修改为新的主题名字
然后

hexo clean
hexo g
hexo d
  相关解决方案