首发链接

开始之前需要在电脑上安装好Gitnode.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搭建个人博客的更多相关文章

  1. Linux下使用 github+hexo 搭建个人博客07-next主题接入搜索和站点管理

    这是搭建个人博客系统系列文章的最后一篇,如果你是从第一篇一路跟下来的,那么恭喜你,即将完成整个博客网站的搭建.OK,话不多说,开始我们的收官之战. 不知你想过没有,如果我们的文章少,一眼看完整个目录, ...

  2. Linux下使用 github+hexo 搭建个人博客06-next主题接入数据统计

    之前说了 next 主题的优化和接入评论系统.让我们完成了自己所需的页面风格和排版,也可让访问用户在每篇博文评论,完成博主和访问用户的交互. 本章我们继续讲解其他重要功能. 既然是一个网站,那么我们就 ...

  3. Linux下使用 github+hexo 搭建个人博客05-next主题接入评论系统

    静态站点拥有一定的局限性,因此我们需要借助于第三方服务来扩展我们站点的功能. 而评论系统是最常用于和网站用户交流的,因此本章讲解在 next 主题,如何接入评论系统. 参考网站:Next 使用文档,第 ...

  4. Linux下使用 github+hexo 搭建个人博客04-next主题优化

    上篇我们说了 hexo 的优化,针对的站点的优化. 本篇讲解 next 主题的优化,包括:使用语言.前端页面显示宽度.菜单.侧栏.头像.添加或取消动画效果.打赏功能等等. 让页面排版更符合我们所要的功 ...

  5. Linux下使用 github+hexo 搭建个人博客03-hexo配置优化

    上两张文章,我们说了 hexo 部署.主题的切换.博文的创建.MarkDown 简单使用和 hexo 部署到 GitHub Pages. 也说了我们会使用 next 主题做为我们后期博客的使用和维护. ...

  6. Linux下使用 github+hexo 搭建个人博客02-hexo部署到Github Pages

    之前的这篇文章<Linux下使用 github+hexo 搭建个人博客01-hexo搭建>,相信大家都知道怎么搭建 hexo ,怎么切换主题,并且完成了一篇博文的创建,以及 MarkDow ...

  7. Linux下使用 github+hexo 搭建个人博客01-hexo搭建

    为什么要搭建自己的博客系统? 原因有好几个吧,归类如下:1.自己搭建博客系统很有成就感,可以自己选定页面风格和页面排版: 2.自己搭建博客系统可以根据自己的需要添加各种插件功能,因此整体上比网上的第三 ...

  8. Windows下通过GitHub+Hexo搭建个人博客的步骤

    Windows下通过GitHub+Hexo搭建个人博客的步骤  https://blog.csdn.net/namechenfl/article/details/90442312 https://bl ...

  9. Github+Hexo,搭建专有博客

    前言 记得从大二开始,就一直想搭个专属网站,当时使劲抠页面[前端页面是从QQ空间抠的,现在想抠估计没这么容易了],写代码,忙活半天才把程序弄好. 可惜最终项目还是没上线,因为当时有两问题绕不开 需要购 ...

随机推荐

  1. ftp自动上传下载同步工具 免费好用的ftp自动上传下载同步工具

    有时我们需要定时上传文件到FTP,可大多数FTP工具并不支持定时上传功能,这时我们就需要可以定时ftp上传的工具(服务器管理工具).它是一款功能强大的服务器集成管理器,包含win系统和linux系统的 ...

  2. 谈谈 Java 中的那些“琐”事

    一.公平锁&非公平锁 是什么 公平锁:线程按照申请锁的顺序来获取锁:在并发环境中,每个线程都会被加到等待队列中,按照 FIFO 的顺序获取锁. 非公平锁:线程不按照申请锁的顺序来获取锁:一上来 ...

  3. 容器云平台No.7~kubernetes监控系统prometheus-operator

    简介 prometheus-operator Prometheus:一个非常优秀的监控工具或者说是监控方案.它提供了数据搜集.存储.处理.可视化和告警一套完整的解决方案.作为kubernetes官方推 ...

  4. python自动保存百度网盘资源

    觉得有帮助的别忘了关注一下知识图谱与大数据公众号,完整代码移步从今天开始种树 开始 在上一文中,我们保存了百度云盘的地址和提取码,但是这种分享链接很容易被屏蔽,最好的做法就是保存资源到自己的网盘,不过 ...

  5. 这么设计,Redis 10亿数据量只需要100MB内存

    本文主要和大家分享一下redis的高级特性:bit位操作. 本文redis试验代码基于如下环境: 操作系统:Mac OS 64位 版本:Redis 5.0.7 64 bit 运行模式:standalo ...

  6. Chrome使用video无法正常播放MP4视频的解决方案

    H5的video标签让前端开发者用一行代码就可以实现视频和音频的播放,然而,有时候我们会突然发现,某些Mp4格式的视频在Chrome下居然无法正常播放?这究竟是什么原因呢?这篇文章主要分析了部分Mp4 ...

  7. 简单两步使用css控制div下导航栏ul居中显示

    第一步:父层设置文本居中属性 ul{ text-align:center; } 第二步:li设置内联样式 li{ display:inline; } PS 只需以上两步就可以实现导航栏居中显示了,但为 ...

  8. sed: -e expression #1, char 23: unknown option to `s'

    语言:bash why? / 作为sed的分隔符,和需要操作的内容有冲突 way? 替换 / 分隔符为 # 或者其他分隔符

  9. matlab一个figure画多个子图,和多个figure画多个图。

    参考:https://blog.csdn.net/xiaotao_1/article/details/79024488 1,一个figure画多个子图: figure(10) % define fig ...

  10. RHSA-2017:1931-中危: bash 安全和BUG修复更新(代码执行)

    [root@localhost ~]# cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) 修复命令: 使用root账号登陆She ...