Mac下使用GitHub+Hexo搭建个人博客
首发链接
开始之前需要在电脑上安装好Git和node.js,Mac上可以使用Homebrew命令行工具来安装Git和node.js
安装Homebrew
在命令行工具输入以下命令,如果已经安装过Homebrew可以忽略
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Homebrew 安装 node.js
brew install node
安装后可以使用命令来检查是否安装成功
检查node
node -v
输出结果:
v12.14.1
检查npm是否安装成功,npm是node.js的包管理工具,用它来安装hexo
nmp -v
输出结果:
6.13.4
Homebrew 安装git
brew install git
检查git是否安装成功
git -v
输出结果:
git version 2.24.3 (Apple Git-128)
使用 npm 安装 hexo
sudo npm install -g hexo-cli
安装完成后,在Desktop创建一个blog文件夹,在该文件夹下初始化我们的博客
cd ~/Desktop && mkdir blog && cd blog
在该文件件目录下执行博客初始化操作
# 会下载一些node.js的依赖文件
hexo init
初始化成功后,在blog目录下执行预览操作
hexo s
当看到如下输出就可以预览我们创建的博客了
INFO Validating config
INFO Start processing
INFO Hexo is running at http://localhost:4000 . Press Ctrl+C to stop.
预览效果如下

配置客户端git 添加SSH Key到github
如果已经配置过,该步骤可以忽略
在命令行输入配置用户名和账号的命令
git config --global user.name "username"
git config --global user.email "email@gmail.com"
其中 username是你的用户名,email@gmail.com是你github的登录邮箱
然后通过终端命令生成SSH Key
ssh-keygen -t rsa -C "email@gmail.com"
如果已经创建过会出现 Overwrite (y/n)? n提示可以输入 n,如果没有创建过会要求我们输入密码,然后一路回车下去就行,执行完成后会在~/.ssh/id_rsa.pub目录下生成 需要使用的 key。
可以使用命令行输出key并复制
cat ~/.ssh/id_rsa.pub
或者可以找到这个文件并打开它,复制里面的内容。
登录github账号 找到 setting

先点击 SSH and GPG keys然后再点击 New SSH key 进入到配置 SSH Key 的页面

然后输入复制好的key的内容

点击 Add SSH Key 即可
本地博客关联到Github主页
登录Github并且创建一个名字为 username.githug.io的仓库,比如我的仓库名字为 Johnson8888.github.io
因为我已经创建过了,所以会显示红色,如果创建过,会显示绿色的,然后点击创建。切记一定要选择 Public,否定不能访问。

然后命令行切换到本地blog目录下 cd ~/Desktop/blog
执行命令
sudo npm install hexo-deployer-git --save
然后开始修改配置文件 ~/Desktop/blog/_config.yml
修改 deploy部分为
deploy:
type: git
repo: git@github.com:Johnson8888/Johnson8888.github.io.git
branch: master
然后就可以把博客push到github了
在命令行执行
#生成我们想要的博客文件
hexo g
#将本地的博客文件push到github
hexo d
hexo d 执行成功后,就可以查看我们的Blog了
开始写博客
在命令行执行
hexo new firstPage.md
会在 ~/Desktop/blog/source/_post目录下生成 firstPage.md打开这个文件就可以开心的写博客了
写完后重新执行
hexo g
hexo d
就可以同步博客到github
Todo
- 申请域名指向博客,这样就可以直接使用域名访问了
- hexo支持很多模板样式 可以去官网选择自己喜欢的使用
附 hexo常用命令
hexo n "博客名称" => hexo new "博客名称" #这两个都是创建新文章,前者是简写模式
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 #开始部署
Mac下使用GitHub+Hexo搭建个人博客的更多相关文章
- Linux下使用 github+hexo 搭建个人博客07-next主题接入搜索和站点管理
这是搭建个人博客系统系列文章的最后一篇,如果你是从第一篇一路跟下来的,那么恭喜你,即将完成整个博客网站的搭建.OK,话不多说,开始我们的收官之战. 不知你想过没有,如果我们的文章少,一眼看完整个目录, ...
- Linux下使用 github+hexo 搭建个人博客06-next主题接入数据统计
之前说了 next 主题的优化和接入评论系统.让我们完成了自己所需的页面风格和排版,也可让访问用户在每篇博文评论,完成博主和访问用户的交互. 本章我们继续讲解其他重要功能. 既然是一个网站,那么我们就 ...
- Linux下使用 github+hexo 搭建个人博客05-next主题接入评论系统
静态站点拥有一定的局限性,因此我们需要借助于第三方服务来扩展我们站点的功能. 而评论系统是最常用于和网站用户交流的,因此本章讲解在 next 主题,如何接入评论系统. 参考网站:Next 使用文档,第 ...
- Linux下使用 github+hexo 搭建个人博客04-next主题优化
上篇我们说了 hexo 的优化,针对的站点的优化. 本篇讲解 next 主题的优化,包括:使用语言.前端页面显示宽度.菜单.侧栏.头像.添加或取消动画效果.打赏功能等等. 让页面排版更符合我们所要的功 ...
- Linux下使用 github+hexo 搭建个人博客03-hexo配置优化
上两张文章,我们说了 hexo 部署.主题的切换.博文的创建.MarkDown 简单使用和 hexo 部署到 GitHub Pages. 也说了我们会使用 next 主题做为我们后期博客的使用和维护. ...
- Linux下使用 github+hexo 搭建个人博客02-hexo部署到Github Pages
之前的这篇文章<Linux下使用 github+hexo 搭建个人博客01-hexo搭建>,相信大家都知道怎么搭建 hexo ,怎么切换主题,并且完成了一篇博文的创建,以及 MarkDow ...
- Linux下使用 github+hexo 搭建个人博客01-hexo搭建
为什么要搭建自己的博客系统? 原因有好几个吧,归类如下:1.自己搭建博客系统很有成就感,可以自己选定页面风格和页面排版: 2.自己搭建博客系统可以根据自己的需要添加各种插件功能,因此整体上比网上的第三 ...
- Windows下通过GitHub+Hexo搭建个人博客的步骤
Windows下通过GitHub+Hexo搭建个人博客的步骤 https://blog.csdn.net/namechenfl/article/details/90442312 https://bl ...
- Github+Hexo,搭建专有博客
前言 记得从大二开始,就一直想搭个专属网站,当时使劲抠页面[前端页面是从QQ空间抠的,现在想抠估计没这么容易了],写代码,忙活半天才把程序弄好. 可惜最终项目还是没上线,因为当时有两问题绕不开 需要购 ...
随机推荐
- Redis—HyperLogLog
HyperLogLog 实现一个功能 统计网站的UV (user view),区别PV (page view) 数据去重 统计总数 同一个用户的反复点击进入记为 1 次 解决方案 最简单的思路是记录集 ...
- 论文阅读笔记: Natural Language Inference over Interaction Space
这篇文章提出了DIIN(DENSELY INTERACTIVE INFERENCE NETWORK)模型. 是解决NLI(NATURAL LANGUAGE INFERENCE)问题的很好的一种方法. ...
- Spring Eureka 本地Docker集群部署
故事背景 最近因为产线使用的服务与发现服务,使用的是Spring Cloud Eureka集群部署,为了以后调试产线的问题,想在本地搭建和产线一样的环境.产线的所有服务都是基于K8s和Docker部署 ...
- 虚拟机CentOS开机黑屏解决方案
默认配置 错误: 1.直接就是黑屏,连杠杠都没有 2.centos系统关不掉 3.关闭vmware提示:虚拟机XXX繁忙 解决方案一: 1.以管理员身份运行cmd控制台程序 2.在cmd窗口中输入ne ...
- sping ioc 源码分析(一)-- register(componentClasses) 方法
一.测试环境的搭建: public class Apple { } @Component public class MyComponet { } public class MyCondition im ...
- linux操作系统网卡漂移导致网络不可用
1.故障描述 公司有100-150台服务器安装RHEL7.4&中标麒麟7.4系统,为方便编辑配置网卡,使用脚本方式配置为biosname=0,ifname=0,目的是为将en1o2p此类长字符 ...
- Centos-修改文件访问和修改时间-touch
touch 如果文件存在,则改变文件的访问时间和修改时间,如果不存在则创建一个空文件 相关选项 -a 更改文件访问时间为当前系统时间 -m 更改文件修改时间为当前系统时间 -c 如果文 ...
- mysql-17-procedure
#存储过程 /* 一组预先编译好的sql语句集合,理解成批处理语句 好处: 1.提高代码重用性 2.简化操作 3.减少了编译次数并减少了和数据库服务器的连接次数,提高了效率 */ #一.创建 /* c ...
- [Angular JS教程] HeroService: getHeroes failed: undefined 问题解决方法
最近在学习入门Angular JS,学习资源是https://angular.cn/tutorial, 在学习到 "https://angular.cn/tutorial/toh-pt6模拟 ...
- K8S环境的Jenkin性能问题处理续篇(任务Pod设置)
欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos K8S环境的Jenkin性能问题处理 本文是<K ...