Hexo的详细搭建过程

环境要求:

这里提供Centos8.2下的安装过程:

 dnf module list nodejs
 dnf module install nodejs:14 -y
 # 这里最新版是14,所以安装版本号是14,-y是同意安装
 yum -y install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
 yum -y install git-core

安装完成后,输入以下命令查询版本

node -v
 npm -v
 git --version

node.js切换淘宝源

方法一:设置淘宝镜像源

npm config set registry https://registry.npm.taobao.org
 npm config get registry

方法二:安装淘宝镜像源

npm install -g cnpm --registry=https://registry.npm.taobao.org

安装淘宝源后可以用cnpm代替npm命令,这里我们选择方法一。

安装Hexo

这里我们只需要输入以下命令即可

npm install -g hexo-cli
 # 这里把我们的博客网站叫做myblog
 hexo init myblog
 # 这里是从Github克隆的,所以可能会有点慢,参见后面的解决办法
 # 程序会自动创建一个myblog文件夹

Github添加仓库

首先,你先要有一个GitHub账户,去注册一个吧。
注册完登录后,在+中看到一个New repository,新建仓库
请输入图片描述
创建一个和你用户名相同的仓库,后面加.github.io,只有这样,将来要部署到GitHub page的时候,才会被识别,也就是xxxx.github.io,其中xxx就是你注册GitHub的用户名。点击Create repository。
请输入图片描述
刷新之后点SSH,记住文本框里的地址,比如我这里是git@github.com:aqvq/aqvq.github.io.git

生成SSH添加到GitHub

SSH,简单来讲,就是一个密钥,其中,id_ed25519是你这台电脑的私人密钥,不能给别人看的,id_ed25519.pub是公共秘钥,可以随便给别人看。把这个公钥放在GitHub上,这样当你链接GitHub自己的账户时,它就会根据公钥匹配你的私钥,当能够相互匹配时,才能够顺利的通过git上传你的文件到GitHub上。

官方教程:Connecting to GitHub with SSH - GitHub Docs

生成SSH密钥
在终端输入以下命令,youremail替换成你注册Github的邮箱。

ssh-keygen -t ed25519 -C "youremail"

注意:如果你用的是不支持Ed25519算法的旧系统,要换成:

ssh-keygen -t rsa -b 4096 -C "youremail"

接下来会提示输入保存密钥的文件,按"Enter"会接受默认文件位置,如下(如果要改名字请输入绝对路径,否则不会生成密钥):

> Enter a file in which to save the key (/home/you/.ssh/id_ed25519): [Press enter]

接下来会提示输入安全密码,默认为空,Enter即可。

> Enter passphrase (empty for no passphrase): [Type a passphrase]
 > Enter same passphrase again: [Type passphrase again]

将SSH密钥添加到SSH代理

在后台启动SSH代理。

eval "$(ssh-agent -s)"

把你的SSH私钥添加到SSH代理。如果你用的是不同的名字创建密钥,用你自己的私钥文件的名字替换命令中的id_ed25519。

ssh-add ~/.ssh/id_ed25519

打开id_ed25519.pub,复制里面的内容。
向Github仓库添加SSH密钥
点仓库的Settings,找到Deploy keys选项,点击Add deploy key,把你的id_ed25519.pub里面的信息复制到Key文本框中,勾上Allow write access,点击Add key。

请输入图片描述
解决提交到Github时每次都要输入用户名和密码的问题

cd myblog
 git init
 git config --global user.email "you@example.com"
 git config --global user.name "Your Name"
 git remote add origin git@github.com:aqvq/aqvq.github.io.git

"you@example.com"是你的邮箱,"Your Name"是你的账号名。

origin可以是你给远端仓库起的任意名字,后面的才是真正的远端仓库的地址,就是之前创建仓库时记的地址。

在终端中输入

ssh -T git@github.com

查看是否成功,如果有询问,输入yes(不是y)。然后会显示You've successfully authenticated等字样,说明成功了。

将Hexo部署到Github

进入我们博客的文件夹myblog,编辑配置文件_config.yml。

翻到最后,找到deploy:,按如下修改,repo:填你自己的地址:

# Deployment
 ## Docs: https://hexo.io/docs/one-command-deployment
 deploy:
   type: 'git'
   repo: git@github.com:aqvq/aqvq.github.io.git
   branch: master

这个时候需要先安装deploy-git ,这样你才能用命令部署到GitHub。

npm install hexo-deployer-git --save

在myblog文件夹下输入以下命令:

hexo clean
 hexo generate
 hexo deploy

hexo clean清除了你之前生成的东西,可以不加。
hexo generate生成静态文章,可以用 hexo g缩写
hexo deploy 部署文章,可以用hexo d缩写
-
如果看到如下内容

Branch 'master' set up to track remote branch 'master' from 'git@github.com:aqvq/aqvq.github.io.git'.
 Everything up-to-date
 INFO  Deploy done: git

表示部署成功,过一会儿就可以在http://aqvq.github.io 这个网站看到你的博客了!

如果报错可以使用git部署~

转载自:https://www.juzaizai.com/index.php/archives/25/

最后修改:2022 年 10 月 18 日 11 : 09 AM
如果觉得我的文章对你有用,请随意赞赏