Molerose

本地搭建Hexo并关联Github
网上有很多的关于 Hexo 搭建到 Github 上去的的教程,看的人眼花缭乱的,博主在刚开始学的时候感觉很乱,所...
扫描右侧二维码阅读全文
05
2018/07

本地搭建Hexo并关联Github

网上有很多的关于 Hexo 搭建到 Github 上去的的教程,看的人眼花缭乱的,博主在刚开始学的时候感觉很乱,所以出此文,来理理一个简单的搭建及部署思路。


思维导图

必要应用

配置Git

当安装完Git应该做的第一件事情就是设置用户名称和邮件地址。这样做很重要,因为每一个Git的提交都会使用这些信息,并且它会写入你的每一次提交中,不可更改。

$ git config --global user.name "username"
$ git config --global user.email "your_email@example.com"

对于 user.email ,因为在GitHub的 commits 信息上是可见的,所以如果你不想让人知道你的 email ,可以 Keeping your email address private

  • 在GitHub右上方点击你的头像,选择 Settings
  • 在右边的 Personal settings 侧边栏选择 Emails
  • 选择 Keep my email address private

这样,你就可以使用如下格式的email进行配置:

$ git config --global user.email "username@users.noreply.github.com"

相关资料:

本地安装Hexo

本地建立项目文件夹,建立成功后,一次在该文件夹内通过 Git bash 依次执行命令:

$ npm install hexo-cli -g
$ hexo init 
$ npm install
$ hexo g
$ hexo s

本地访问

在浏览器中输入 localhost:4000 进行本地访问,看到 Hexo 首页即算成功!
如果4000端口访问出错的话,执行一下命令可以更换端口访问

$ hexo s -p 5000

相关资料:

将Hexo(本地)部署至Github

GitHub Pages有两种类型:User/Organization Pages 和 Project Pages,而我所使用的是User Pages。

Github创建仓库

在自己的GitHub账号下创建一个新的仓库,命名为username.github.io(username是你的账号名)。

创建仓库

User Pages 与 Project Pages的区别是:

  • User Pages 是用来展示用户的,而 Project Pages 是用来展示项目的。
  • 用于存放 User Pages 的仓库必须使用username.github.io的命名规则,而 Project Pages 则没有特殊的要求。
  • User Pages 将使用仓库的 master 分支,而 Project Pages 将使用 gh-pages 分支。
  • User Pages 通过 username.github.io 进行访问
  • Projects Pages通过 username.github.io/projectname 进行访问。

创建分支hexo并设置默认分支

仓库创建以后会有一个默认分支 master
基于hexo上如果想实现多台电脑通过Github同时管理更新博客的话,那就建议使用2个分支,一个存放源文件(hexo) ,一个存放生成的静态页面(master)

创建hexo分支
设置hexo为默认分支
设置hexo为默认分支
设置hexo为默认分支

开启GitHub Pages

开启Gtihub Page后可通过 username.github.io 进行访问

开启GitHub Pages

检查电脑是否已有SSH key

$ ls -al ~/.ssh

默认情况下,public keys的文件名是以下的格式之一

  • id_dsa.pub
  • id_ecdsa.pub
  • id_ed25519.pub
  • id_rsa.pub

因此,如果列出的文件有public和private钥匙对(例如id_ras.pubid_rsa),证明已存在SSH key

如果没有,则生成新的SSH key 碰到冒号一路回车即可

$ ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

正确填写SSH key

  • 根据路径找到 id_ras.pub 文件,并用记事本打开,复制所看到的所有内容
  • 进入Github → settingsSSH and GPG keysNew SSH key
  • 粘贴刚才复制的内容,title随意填写

填写SSH key
填写SSH key
填写SSH key

修改_config.yml文件

编辑 _config.yml 文件,设置好仓库地址及需要提交的分支名称
由于我们第一波需要上传的是本地生成后的静态页面,所以 branch 应该为 master

deploy:
    type: git 
    repository: ssh://git@github.com/username/username.github.io
    branch: master

备注:
在填写 deploy 项的时候,repository 同样可以用如下两种形式的
只不过使用 ssh 的话比较安全一些,只要把私钥留好即可,如果不嫌麻烦可以把 .ssh 文件夹打个压缩包存放到云盘里面去,需要要用的话直接下载放到对应的目录中去
常规电脑目录路径为 C:\Users\Administrator
当然如果实在不知道此路径的话,你本地生成个 ssh 再覆盖即可;

repo: git@github.com:username/username.github.io.git 
repository: https://github.com/username/username.github.io

安装自动部署工具

$ npm install hexo-deployer-git --save

部署博客至Github

$ hexo g -d

出现 INFO Deploy done:git 则表明部署成功,同时也可以通过预设的仓库名称 username.github.io 进行访问了
此刻查看对应仓库中的 master 分支,看看文件是否成功上传

相关资料:

使用主题Next

  • 下载Next主题压缩包并解压
  • 拷贝到自己的本地项目文件夹..themes里面
  • 修改_config.yml中的theme: landscape改为对应的主题名字。

相关资料:

源文件提交至Github

源文件提交至Github中去的话,可以方便换电脑了或重装系统的时候,还可以方便的去管理更新自己的Bolg's

创建.git文件

$ git init

本地创建新分支hexo

$ git checkout -b hexo

显示对应的克隆地址

$ git remote -v

修改远程仓库地址

$ git remote set-url origin git@github.com:username/username.github.io

拉取线上分支并合并本地hexo分支

$ git pull --rebase origin hexo

上传源文件至Hexo分支

$ git push -u origin hexo

相关资料:

Hexo 常用命令

相关资料:

Last modification:July 5th, 2018 at 09:59 pm
If you think my article is useful to you, please feel free to appreciate

4 comments

  1. 一朵时光红

    都是关于技术方面的文章!是一些常用的命令

  2. 一朵好时光红

    好文章,不错!

  3. 好时光荣

    写了很多关于程序配置方面的知识!

  4. 太阳黑子

    好像没有写什么哦!

Leave a Comment Cancel reply