0%

如何在macOS下,从零搭建Hexo环境

Hexo?

Hexo是一个基于Node.js的快速、简洁且高效的博客框架,Hexo支持GitHub Flavored Markdown的所有功能,它可以非常方便的生成静态网页托管在GitHub上,是搭建博客的多首选框架之一。更多详情请前往Hexo官网
​注:此部分的删除线仅代表可以不用关注的部分,并非不支持或存在错误。

那么,开始动手!

想要在Mac上通过Hexo发布内容,我们需要安装/配置如下应用:

  • Homebrew(该部分由于网络原因安装进度会比较慢,请不要放弃它!它将为之后安装各种软件包带来便利!)
  • Git
  • Node.js
  • Hexo

    1. Homebrew

    Homebrew是一个macOS平台下的软件包管理工具,它可以通过简单的一条命令实现软件包及其依赖文件的安装、卸载、更新等处理。

    安装Homebrew

  • 方法一(不推荐,可直接看方法二)
    通过Homebrew官方提供的命令安装,此方法需要科学合理的网络条件,否则可能因网络问题导致无法安装或安装过程中失败,如网络条件不足,请选择方法二。
    如网络条件允许,可打开“终端”应用粘贴以下命令并回车:
    1
    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
    此时,“终端”会要求输入当前用户的登录密码(注:输入密码的过程中,密码不可见,完成输入后回车即可,如输入错误,请按住Option键+Delete删除)以继续操作。
    ​网络可用且密码正确时,您将看到如下提示,此时请按回车键继续。

    Press RETURN to continue or any other key to abort

安装时长受网络环境影响,请耐心等待!

  • 方法二(清华源)
    修改Homebrew的安装源(我已修改并提供使用),我们可以使用国内镜像站(清华大学)提供的服务进行安装。
    打开“终端”应用,粘贴以下命令并回车即可开始安装:
    1
    /bin/bash -c "$(curl -fsSL https://brz955.cn/Homebrew/install.sh)"
    此时,“终端”会要求输入当前用户的登录密码(注:输入密码的过程中,密码不可见,完成输入后回车即可,如输入错误,请按住Option键+Delete删除)以继续操作。

若一切正常(密码输入正确,网络无故障),您将看到如下提示,此时请按回车键继续。

Press RETURN to continue or any other key to abort

当安装过程中出现如下代码时:(此时由于网络原因,进度会特别慢)

==> Tapping homebrew/core
Cloning into ‘/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core’ …

请按 Control键 和 C键 中止安装,然后粘贴以下命令至“终端”并回车以继续安装:(Homebrew文件数量较多,请耐心等待)

1
2
3
mkdir "$(brew --repo)/Library/Taps/homebrew"
cd "$(brew --repo)/Library/Taps/homebrew"
git clone https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git

注:如果安装出现如下异常(清华源网络异常):

fatal: the remote end hung up unexpectedly.
fatal: early EOF
fatal: index-pack failed

请尝试(更换为中科大源)粘贴以下命令至“终端”并回车:

1
2
cd "$(brew --repo)/Library/Taps/homebrew"
git clone https://mirrors.ustc.edu.cn/homebrew-core.git

此部分安装完成(出现如下字样)后,

Updating files: 100% (xxxx/xxxx), done.

粘贴以下命令至“终端”并回车:

1
2
3
cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"
git remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git
brew update

当出现以下字样时,

Already up-to-date.

🎉恭喜您🎉,此刻Homebrew便已安装完成了!

2. Git

Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。
本文中所用到的Hexo博客程序生成的文件(例如您刚写好的一篇文章)将会在GitHub Pages上进行托管(托管后即可通过互联网访问),所以我们需要准备好一个GitHub帐号,并配置好Pages的相关设置。

注册GitHub帐号

创建个人仓库

注册帐号并登陆后,我们将会在首页(GitHub)看到一个“New Repository”,点击后,开始新建一个代码仓库。
我们在“Repository name”处填写”您的GitHub用户名.github.io”,这样之后我们便可以通过该地址访问到您的博客页面。
然后点击“Create repository”完成仓库创建。

生成SSH密钥并添加到GitHub帐号

SSH密钥将会用于GitHub的用户验证,以此向GitHub表明“我是我自己”。
打开“终端”应用,分别输入以下命令设置Git帐号信息:

1
2
git config --global user.name "您的用户名"
git config --global user.email "您的GitHub邮箱"

输入以下命令,开始SSH密钥文件的创建:

1
ssh-keygen -t rsa -c "您的GitHub邮箱"

输入以上命令后,会出现文件保存路径及密码加密等设置提示,直接回车保持默认即可(共计3次回车)。
然后输入以下命令查看SSH的公钥信息:

1
cat ~/.ssh/id_rsa.pub

我们需要将从“ssh-rsa”的字样开始,一直选中到邮箱结尾,然后复制。
此时,我们回到GitHub网站,点击右上角头像,选择”Settings”,然后在左侧找到“SSH and GPG keys”并单击,点击右侧“New SSH key”按钮,然后将刚才在“终端”复制的公钥信息粘贴至“Key”的文本框处,在上方“Title”处写上任意标题后,点击“Add SSH key”按钮即可完成SSH密钥的添加。
回到“终端”,输入以下命令:

1
ssh -T git@github.com

首次连接时,会出现如下提示:

Are you sure you want to continue connecting (yes/no/[fingerprint])?

我们输入yes并回车,当出现以下字样时,

Hi (您的GitHub名)! You’ve successfully authenti cated, but GitHub does not provide shell access.

🎉恭喜您🎉,这部分我们便完成了!

3. Node.js

Node.js是一个JavaScript运行环境,我们使用的Hexo就是基于该运行环境。

极速安装

得益于Homebrew的安装,我们可以使用如下一条命令来完成Node.js的安装!

1
brew install -g node

当命令完成后,尝试输入以下命令来验证是否已正确安装

1
2
node -v
npm -v

如出现相应的版本号(数字+点号组成),则表示已成功安装!

4. Hexo

终于,我们迎来了正主,是时候让前面的铺垫发挥作用了!

预备~

输入以下命令,开始Hexo主程序安装:

1
npm install -g hexo-cli

当出现以下字符时,

added xx packages from xxx contributors in xxx.xxs

则主程序安装完成。
​然后我们需要指定一个文件夹,用于您博客的相关文件存放。
​为了便于查找,建议您将文件夹指定在系统用户的根目录下。如:

/Users/您的用户名/您的Hexo文件夹

同样打开“终端”应用(若刚才并未关闭该应用,则输入”cd”回车即可),此时默认操作路径为您的用户文件夹即:

/Users/您的用户名/

输入以下命令,完成博客文件初始化:

1
2
hexo init 您的Hexo文件夹名
(例如:hexo init Myblog)

当出现以下字符时,

INFO Start blogging with Hexo!
则文件已经初始化完毕了!
然后我们输入以下命令:

1
2
cd 您的Hexo文件夹名
npm install

此时,我们便可以开始进行本地测试了!
​输入以下命令:

1
2
hexo g
hexo server

此时我们会看到:

Hexo is running at http://localhost:4000.

现在,右键单击这个地址,选择“打开URL”,你就可以看到一个在本地运行着的博客啦!
​注:hexo g是根据您写的内容,生成本地网页文件。hexo server是开启一个本地服务,可以进行网页预览,此时可以按Control键 和 C键 停止本地服务。

部署到GitHub

同样,打开“终端”应用,在您的Hexo文件夹下,输入以下命令:

1
npm install hexo-deployer-git --save

完成安装后,我们需要前往您的用户文件夹(在桌面同时按 Shift键 、Command键 和 H键),然后找到您的Hexo文件夹,进入文件夹后,使用编辑器打开”_config.yml”文件,然后在文件末尾处,修改并添加以下代码:

1
2
3
4
deploy:
type: git
repo: https://github.com/您的GitHub用户名/您的GitHub用户名.github.io.git
branch: master

然后在“终端”应用内输入以下命令:

1
2
3
hexo clean
hexo generate
hexo deploy

其中,hexo clean是将旧文件清除,hexo generate是生成新的文件,hexo deploy则是将文件部署到GitHub。
注:deploy时可能需要您输入GitHub用户名和密码。
此时,您已经可以通过”您的GitHub用户名.github.io”网址进行访问了~