网上大部分基于Hexo搭建个人博客的教程都是在Windows环境下实现的,Mac OS的教程很少,然而,Mac OS下完成这个任务远比Windows要容易。
准备工作
安装Homebrew
打开终端,首先安装Homebrew,以便安装必要的组件。
/usr/bin/ruby -e "$(curl -fsSL https://cdn.jsdelivr.net/gh/ineo6/homebrew-install/install)"
当然,脚本随时可能失效,本文参考了USTC的镜像,也可以自行去网上找教程。
安装Git
Homebrew安装完成后,安装Git。
brew install git
安装Node.js
brew install node
测试所需组件是否安装成功
依次输入下面的命令
npm -v
node -v
git --version

出现npm、Node.js和git的版本号即代表安装成功。
配置Hexo环境
我们使用npm命令来安装Hexo,在此之前,需要先在电脑上账户的主目录下创建一个文件夹。这里我使用blog作为文件夹的名称。

选择创建在账户主文件夹下是为了方便日后在终端里切换到博客所在的目录。
接着打开终端输入命令:
npm install -g hexo-cli
等待安装完成后初始化博客
cd blog
hexo init blog
注意,cd blog
的作用是切换到刚才创建好的blog文件夹中,也就是说,初始化博客的命令是作用在刚刚创建的blog文件夹下的。
至此,博客已经初始化,依次执行以下两条命令
hexo g
hexo s
完成后不要关闭终端,在浏览器内输入地址:
127.0.0.1:4000
可以预览博客网站

配置Git部署网站到GitHub
首先你得有一个Github账号,没有的话自己去Github上注册一个,当然如果你有别的静态网站托管服务可以自行研究把你的博客部署上去,本文用到的托管服务是Github Pages,下文提到的用户名均指你的Github用户名。
配置客户端git 添加SSH Key到github
已经配置过的话请跳过此步
在命令行输入配置用户名和账号的命令
git config --global user.name "username"
git config --global user.email "[email protected]"
其中 username
是你的用户名,[email protected]
是你github的登录邮箱 然后通过终端命令生成SSH Key
ssh-keygen -t rsa -C "[email protected]"
如果已经创建过会出现 Overwrite (y/n)? n
提示可以输入 n
,没有创建过的话三个回车就好,执行完成后会在~/.ssh/id_rsa.pub
目录下生成 需要使用的 key,也就是公钥
到账户主文件夹下同时按Command+Shift+.显示隐藏文件,找到.ssh文件夹,打开id_rsa.pub,将里面的内容全部复制。
打开GitHub_Settings_keys 页面,新建New SSH Key,Title随意填,Key就把刚才复制的内容全都粘贴上去。然后点Add SSH Key即可

然后命令行输入ssh [email protected]

出现你的Github用户名代表配置成功。
在Github上新建网站仓库,将本地博客关联到Github主页
在Github上新建一个仓库,Repository Name填你的用户名.github.io
,仓库状态设为Public,然后Create Repository创建新的网站仓库。
打开终端执行命令
cd blog
npm install hexo-deployer-git --save
执行完以后终端窗口先不要关,在Finder(访达)中打开blog文件夹,打开其中的_config.yml文件,翻到底部,修改deploy部分为
deploy:
type: git
repo: [email protected]:你的用户名/你的用户名.github.io.git
branch: master
修改完成后按Command + S保存,此时就可以使用hexo d
把存在本地的博客deploy到Github上了。
回到终端,输入
#生成博客
hexo g
#将博客推送到指定的地方,在这里是我们的Github仓库
hexo d

第一次执行hexo d命令时可能要求你输入你的Github账号和密码,这里如果依照提示按部就班输入你的账户密码会出现如图所示的报错,这是因为Github在2021年8月13日停止了使用账户密码认证的支持,这时需要在Gihub上Developer Settings页面上新建一个Personal Access Token代替密码就可以顺利deploy。
执行完毕后,访问你的用户名.github.io
就能看到你的博客了。
绑定自定义域名(可选)
其实到这一步就可以开始写博客了,不过默认给的github.io域名要是不满意的话还可以绑定你自己的域名
首先自行申请一个域名,然后登陆到域名申请的后台,添加两条解析记录

第一条A记录是存放你博客的ip地址,这个可以通过ping你的博客地址得到,第二条CNAME记录是你的博客地址。
打开存放博客的Github仓库,进入Settings页面在pages选项里的Custom domain里填入你的域名,点击Save,勾选Enforce HTTPS,即可通过自定义域名访问你的博客。

开始写作
在终端里执行
#注意以下命令需要切换到blog文件夹(cd blog)执行
hexo g
hexo d
执行后会在blog/source/_post文件夹里生成一个名为title.md
的文件,打开它即可使用Markdown语言开始写作。你问我什么是Markdown?自己去看官方文档。

值得一提的是,Hexo生成时真正显示的标题是title.md
文件里title项的标题,不必过于计较生成新文章时标题的选择,因为真正的表题在这里修改。
写作完成后,在终端里执行
#注意以下命令需要切换到blog文件夹(cd blog)执行
hexo g
hexo d
即可将文章发布。
Hexo常用命令
#注意以下命令需要切换到blog文件夹(cd blog)执行
hexo n "文章名称" => hexo new "文章名称" #这两个都是创建新文章,前者是简写模式,下同,new后面加一个draft可以生成草稿
hexo p => hexo publish #发布草稿
hexo g => hexo generate #生成
hexo s => hexo server #启动服务预览
hexo d => hexo deploy #部署
hexo server #Hexo 会监视文件变动并自动更新,无须重启服务器。
hexo server -s #静态模式
hexo server -p 5000 #更改端口
hexo server -i 192.168.1.1 #自定义IP
hexo clean #清除缓存,网页正常情况下可以忽略此条命令
hexo g #生成静态网页
hexo d #开始部署
还可以做些什么事?
- 更换主题,Hexo有广泛完善的主题生态,可以自行去网上搜索,本站采用的主题在本站底部
- 安装插件,Hexo有广泛完善的插件生态,可以实现很多功能
发表回复