BLOG|[整理/转载]Github+HEXO (Mac)

参考
hexo你的博客
HEXO+Github,搭建属于自己的博客
Mac上搭建基于GitHub的Hexo博客[推荐该篇]
【BLOG|[整理/转载]Github+HEXO (Mac)】目录

    • 配置环境
    • 安装Hexo
    • 配置Github
    • 安装theme
    • 绑定个人域名

配置环境 安装Node.js -> 生成静态页面的
安装Git -> 把本地的hexo内容提交至github(Xcode自带Git)
申请GitHub
安装Hexo
  • sudo npm install-g hexo
    输入管理员密码(Mac登录密码)即开始安装
    (sudo:linux系统管理指令 -g:全局安装)
    注意坑一:Hexo官网上的安装命令是 npm install -g hexo-cli,安装时不要忘记前面加上sudo,否则会因为权限问题报错。
  • 终端cd到一个你选定的目录,执行hexo init命令
    hexo init blog//blog是建立的文件夹名称
  • cd blognpm install//安装npm
  • hexo s//开启hexo服务器
  • 本地浏览器,http://localhost:4000

配置Github
  • 关联Github
    • 检查SSH keys是否存在Github
      ls -al ~/.ssh//检查SSH keys是否存在.
      • 如果有文件github_rsa.pub或github_dsa.pub,则直接将SSH key添加到Github中,否则进入下一步生成SSH key。
    • 生成新的ssh key
      ssh-keygen -t rsa -C "your_email@example.com"//生成public/private rsa key pair
      • 注意将your_email@example.com换成你自己注册Github的邮箱地址。
      • 默认会在相应路径下(~/.ssh/github_rsa.pub)生成github_rsa和github_rsa.pub两个文件。
    • 将ssh key添加到Github中
      • Find前往文件夹~/.ssh/github_rsa.pub打开github_rsa.pub文件
      • 进入Github -> Settings -> SSH and GPG keys -New SSH key ->
        BLOG|[整理/转载]Github+HEXO (Mac)
        文章图片
      • Title内容任意,key为github_rsa.pub内容
  • 创建仓库
    • 登录你的Github帐号,新建仓库,名为用户名.github.io固定写法
    • 本地的blog文件夹下内容为:
      • _config.yml
        db.json
        node_modules
        package.json
        scaffolds
        source
        themes
    • 终端cd到blog文件夹下,vim打开_config.yml
      vim _config.yml
    • 在文件最后deplo修改如下
      • deploy:
        type: git
        repository: https://github.com/yourID/yourID.github.io.git
        branch: master
      • yourID请换成自己的用户名。
      • hexo 3.1.1版本后type:值为git。
        注意坑二:在配置所有的_config.yml文件时(包括theme中的),在所有的冒号:后边都要加一个空格,否则执行hexo命令会报错。
        博主本人的报错为FATAL bad indentation of a mapping entry at line 72, column 15:
        请确认您使用空格进行缩进(Soft tab),并确认冒号后有一个空格。
      • 在blog文件夹目录下执行生成静态页面命令

        • hexo generate 或者 hexo g
        • 此时若出现如下报错:
          ERROR Local hexo not found in ~/blog
          ERROR Try runing: ‘npm install hexo –save’
          若无报错,自行忽略此步骤。
          博主本人的报错为ERROR Deployer not found: git
          均执行命令:
          npm install hexo --save
        • 再执行配置hexo deploy 或者 hexo d
        • 比较奇怪的是之后居然要求我输入用户名和密码(私以为SSH已经搞定

        注意坑三:若执行命令hexo deploy仍然报错:无法连接git,则执行如下命令来安装hexo-deployer-git:
        npm install hexo-deployer-git --save
        再次执行hexo generate和hexo deploy命令
    • 此时,浏览器中打开网址http://yourID.github.io(将gonghonglou换成你的用户名)能看到和打开http://localhost:4000时一样的页面。
  • 发布文章
    • 终端cd到blog文件夹下
      • hexo new "postName" //新建文章,位于目录/blog/source/_posts下
      • 编辑文章
    • 终端cd到blog文件夹下
      • hexo generate //生成静态页面
      • hexo deploy //将文章部署到Github
安装theme
  • 更多官方主题请戳Hexo官网主题页。这里以hexo-theme-next为例
  • 终端cd到 blog 目录
    • git clone https://github.com/iissnan/hexo-theme-next themes/next
    • 将blog目录下_config.yml里theme的名称landscape修改为next
  • 终端cd到blog目录下执行如下命令(每次部署文章的步骤)
    • hexo clean //清除缓存文件 (db.json) 和已生成的静态文件 (public)
    • hexo g //生成缓存和静态文件
    • hexo d //重新部署到服务器
  • 附:NexT 使用文档
    • 更改theme内容,修改 blog/_config.yml 文件和 blog/themes/next/_config.yml 文件中对应的属性名称即可。
    • 不要忘记冒号:后加空格。
绑定个人域名
  • 还未绑定,有兴趣的同学请访问原文。

    推荐阅读