全文纲要
这是我新建立博客的第一篇自己用Markdown语法上传的博客,并不关心关注度与点击量,仅仅是记录自己生活与学习上的一些经历罢了。经验的重复提示着我人类的记忆系统是有限的,计算机与互联网不得不成为我的“外接硬盘”,否则我的大脑将会在记忆的效果好坏的泥潭里无法出来。
这篇博客简单介绍自己通过hexo利用Git Pages静态网页模版开始前的环境配置以及准备工作。其中包括遇到的bug等,相信对于和我一样的电脑小白会有启发和帮助。
如有谬误,烦请指正。
A BRIEF INTRO
系统配置
MacBook Pro(13-inch, 2019, Four Thunderbelt 3 ports, 8 GB Memory)
macOS Bug Sur Version 11.2.3
正文
在流程介绍中,随时出现的bug我会随时解决,请适应这种行文格式。整个流程共分为以下步骤:
- node与npm的安装
- hexo的安装与准备
- hexo与git间的交互准备
- 如何用hexo编辑属于你个人的博客
1. node.js与npm的安装
关于node.js与npm,简而言之,node.js以JavaScript为基础提供了前端渲染与网页制作的便捷,与此同时,npm作为包管理器能够良好地为node.js提供与前端的共享等服务。
具体详情请参考npm 是干什么的?(非教程)
安装nvm
nvm是node.js version management,也就是不同版本的node.js以及npm的包管理工具,我就是通过安装这个来实现的。
Steps
- 检查mac是否安装homebrew
1
$ brew -v
- homebrew已安装的条件下,在终端输入
1
$ brew install nvm
- 显示安装成功后,在终端输入
1
$ brew install nvm
出现下图则表示nvm安装成功。
!图片提示语
此时在终端分别输入
1 | $ node -v |
1 | $ npm -v |
应该会出现相应的版本号
Bug1:command not found: nvm
我在终端输入nvm时显示
1 | $ command not found: nvm |
之前遇见过几次,可能问题出在新的zsh上,我的解决方法如下(参考Mac OS 下 NVM 的安装与使用):
- 在终端运行
1 | export NVM_DIR="$HOME/.nvm" |
- 在 .zshrc 文件内添加以上配置信息(即上方代码)
我的.zshrc文件在我个人用户名folder内(即~)。通过在finder点击**command+shift+.**来显示隐藏文件,找到.zshrc后用TextEdit打开并添加保存即可。
接下来按照上方要求,检验是否有nvm命令。
[注]同样有其他安装nvm以及node.js、npm的方式,我在尝试过程中遇到没有解决的问题,进而选用了如上流程
2. hexo的安装与准备
Followhexo官网的instructions就可以使用了,就在首页。
hexo安装的位置因人而异,我直接在~下在终端运行该段代码。
1 | $ npm install hexo-cli -g # 安装hexo |
运行hexo s后会出现如下内容,你可以通过复制临时链接预览你的网页,按ctrl+c退出。
3. hexo与git间的交互准备
ssh密匙创建
在终端输入
1
$ ssh-keygen -t rsa -C "username" # username一般指你的邮箱地址
点击enter,出现更改id_rsa路径的提示,我选择默认,即直接enter
接下来,会出现Enter passphrase (empty for no passphrase):
这里是让你输入进入的密码,你也可以选择不输入。我在此选择不设置密码直接点击enter,在确认密码时也同样点击enter。
如此我们就创建好了一个ssh密匙
git 添加 ssh密匙
在你刚才添加ssh密匙的路finder径下点击command+shift+.,显示隐藏文件,会出现.ssh的folder,进入后找到id_rsa.pub文件,用TextEdit打开并全部复制到剪切板。
打开你的github网页(这里默认你已经注册并登录)
如下图,点击Settings,点击SSH and GPG keys
进入后选择New SSH key,Title自己命名,Keys处粘贴复制的文件内容,然后增加密匙就好啦。在github上新创建一个repository,注意命名格式必须为xxx.github.io,其中xxx为你的用户名。
4. 如何用hexo编辑属于你个人的博客
配置_config.yml文件
我们在终端回到2中的blog的路径,用编辑器打开config.yml文件,进行修改,如下图所示。
在deploy 内分别加入并编辑type、repo、branch三个关键字。注意,冒号后要空一格。
完成如下修改
1 | type: git |
修改结束之后保存。
同步hexo到github与网站
在终端(此时你的位置应该为blog)运行
1 | $ hexo s |
复制并打开临时网页查看无误后,输入ctrl+c退出
接下来运行
1 | $ hexo d |
运行成功的如下
Bug2: hexo d运行成功,但是网站没有改变
问题原因:github的repository内出现了新的branch,名为master,但是并非default branch name
查询后发现,github因为歧视等缘故,将新的repository的default branch name更改为main,而不是原来的master。这一点使得我更改_config.yml文件时没有注意。
解决方案:将你的repository的default branch name改为master(留着一个branch就好),然后重新运行
1 | $ hexo d |
应该就没有问题了。
问题解决后,我们应该能够在github上看到,并且在浏览器输入你的网站网址(xxx.github.io),应该是能够看到已经生成的界面。到这一步,最初的配置就完成了。