公司实习第一天接到的任务是:搭建一个基于Nodejs的开源项目的开发环境,接到任务时以为不是很困难,后来才知道该项目已于去年被废弃,搭配环境的时候遇到了不少问题,折腾了两天还是没有最终完成...

不过也不是没有收获的,起码对Nodejs多了些了解,正好也想自己弄个Blog,就乘着周末搭建了个,这里记录下过程。

Windows下Git的配置

由于这里只是搭建个环境,不需要其他的一些工具,简单的安装GitForWindows就行了,需要注意的时,在安装时选择Run Git from the windows command Prompt,这样在Windows的命令行可以直接使用git命令。

  1. 配置用户名和邮箱
git config user.name "username"
git config user.email "email"
  1. Github SSH Key配置

    在推送文章到Github时,使用ssh进行验证可以免于输入账户和密码。

    1. 首先在Git Bash使用命令ssh-keygen -t rsa -b 4096 -C "your email"生成公钥和私钥,运行该命令后会有提示的输入信息,可以直接回车跳过。
    2. 添加私钥到ssh。这时有可能ssh-agent没有启动,可以现在Git Bash中运行命令eval "$(ssh-agent -s)来启动,然后运行ssh-add 私钥名称添加私钥。(默认的私钥名称是rsa,如果在生成私钥时设定了名称,就输入上次设定的名称)
    3. 添加公钥到Github的账号。首先使用命令clip < rsa.pub 将公钥的内容复制到剪贴板,然后登录Github,选择settings > SSH Keys > New SSH Key ,将公钥内容粘贴过去,点击 Add New SSH即可。
    4. 验证ssh的配置是否成功。上述步骤完成后,在Git Bash中运行命令ssh git@github.com,根据提示信息判断ssh的配置是否成功。

hexo的配置

  1. 下载安装Nodejs官网下载
  2. 使用npm安装hexo npm install -g hexo (参数g表示的hexo是全局安装),如果下载的比较慢可以指定其他的源,这里提供我使用的安装源npm install -g hexo --registry http://registry.cnpmjs.org
  3. 在建立Blog的文件夹下执行命令hexo init,进行hexo的初始化
  4. 在初始化完成后,文件夹会多了一些文件,这是执行命令npm install下载hexo所需的依赖项。(同上面一样可以指定别的源安装npm install --registry http://registry.cnpmjs.org
  5. 上述步骤完成后,hexo的配置已经基本完成,可以执行hexo server,然后访问localhost:4000查看效果。(hexo默认的端口号是4000,但是4000端口如果被其他进程占用的话,这时访问localhost:4000会得不到响应。解决这个问题的方法是指定其他的端口hexo server -p 8081,访问localhost:8081)
  6. 在github上新建一个repository保存Blog的页面。这里需要注意的是repository 的name有个特别的限定,就是你的github的username.github.io。(例如,我的github的用户名是brookicv,那么我新建的repsoitory name就是 brookicv.github.io)
  7. 修改配置文件。首先打开Blog根目录下面的_config.yml,在里面添加deploy到Github上所需要的信息( 注意将username替换掉
deploy:
type: git
repository: ssh://git@github.com/username/username.github.io.git
branch: master
  1. 将Blog部署到Github。在deploy之前,需要运行命令hexo generate重新生成(修改过_config.yml或者文章后都要记得执行下该命令),然后运行hexo deploy命令就会将Blog的内容推送到Githu。部署完成后,访问usernmae.github.io就可以查看你的Blog内容了。
  2. hexo主题的使用。hexo有很多的主题,并且使用也非常的方便。例如要使用yilia这款主题,可以在Blog的根目录下运行

    git clone https://github.com/litten/hexo-theme-yilia.git themes/yilia

    然后修改_config.yml的theme项为yilia就可以了。
  3. 添加新文章。运行命令hexo new articlename会在source/_posts/articlename.md,编辑该md文件后,运行hexo generatehexo deploy命令就可以在github上看到你的新文章。

后面的话

流水账似的记录下使用hexo在Githu上搭建个人博客的过程。也是一个新的开始,从校园走向社会,开始自己的第一份工作,这几天还是挺迷茫的,不知道以后的技术选择是什么方向,并且感觉自己对第一份工作的选择的技术方向是不是太过看重了...

以后坚持记录自己的学习过程!!!

hexo在git上搭建个人博客的更多相关文章

  1. 用Hexo在GitHub上搭建个人博客

    我用Hexo在GitHub上搭建好了自己的博客,我的这第一篇博客就来说说搭建的过程. 1 环境配置 本文使用环境如下: Windows 10 node.js v8.1.3 git v2.13.2 np ...

  2. 使用Hexo在github上搭建个人博客

    最近正好在学习前端开发,想着搭建一个属于自己的个人博客,把自己的技能树整理整理,温故而知新. 如果你有前端开发经验,那么搭建这样的博客就很简单了. 一 什么是Hexo     Hexo 是一个快速.简 ...

  3. HEXO与Github.io搭建个人博客

    HEXO与Github.io搭建个人博客 HEXO搭建    HEXO是基于Node.JS的一款简单快速的博客框架,能够支持多线程,支持markdown,可以将生成的静态网页发布到github.io以 ...

  4. 在github上搭建个人博客并在线更新

    换博客比更博还勤的我终于决定写一篇博客搭建教程了.. FAQ Q:\(hexo\)需要本地编译.\(jekyll\)虽然可以直接上传\(md\)..但是如果在github上直接编译也太难受了叭,毕竟不 ...

  5. 利用Octopress在github pages上搭建个人博客

    利用Octopress在github pages上搭建个人博客 SEP 29TH, 2013 在GitHub Pages上用Octopress搭建博客,需要安装ruby环境.git环境等.本人在Fed ...

  6. 【网站开发】在新浪SAE上搭建一个博客

    概述 在新浪SAE上搭建一个博客 1.访问新浪SAE站点 http://sae.sina.com.cn/ 2.注册新浪SAE 3.选择应用仓库 4.选择WordPress 5.安装WordPress ...

  7. 使用Coding.net+Hexo+node.js+git来搭建个人博客

    使用Coding.net来搭建基于Hexo的博客 一.准备工作 什么是Coding.net Coding可以说,就是国产的Github,但是,有一个功能使它似乎超越了GitHub-那就是 Web ID ...

  8. Hexo+Github/Coding免费搭建个人博客网站

    体验更优排版请移步原文:http://blog.kwin.wang/other/hexo-github-build-blog.html 很早之前就想搭建一个属于自己的博客网站,一方面是给自己做笔记,把 ...

  9. 使用jekyll在GitHub Pages上搭建个人博客【转】

    网上有不少资源,但大多是“授人以鱼”,文中一步一步的告诉你怎么做,却没有解释为什么,以及他是如何知道的.他们默认着你知道种种专业名词的含义,默认着你掌握着特定技能.你折腾半天,查资料,看教程,一步步下 ...

随机推荐

  1. WPF整理-跨程序集访问资源

    “Sometimes binary resources are defined in one assembly (typically a class library), but areneeded i ...

  2. symbol table meaning

    SYMBOL TABLE: 00000000 l    df *ABS*  00000000 m.c 00000000 l    d  .text  00000000 .text 00000000 l ...

  3. XMPP iOS客户端实现二:xcode项目配置

    1.下载XMPPFramework,下载地址:https://github.com/robbiehanson/XMPPFramework 2.创建项目并将XMPP库引入: 3.添加需要的库文件: 4. ...

  4. ABP理论学习之缓存Caching

    返回总目录 本篇目录 介绍 ICacheManager ICache ITypedCache 配置 介绍 ABP提供了缓存的抽象,它内部使用了这个缓存抽象.虽然默认的实现使用了MemoryCache, ...

  5. 删除Mysql数据表中多余的重复记录的sql语句

    数据表 sniper_tb 中存在主键 id,字段url,现需要在url字段上添加 unique,但由于url存在重复记录,导致添加失败. 如何删除表中多余的url重复记录,仅保持一条? 思路一 将 ...

  6. [史上最全]C#(VB.NET)中位运算符工作过程剖析(译)

    原文地址CodeProject 目录 介绍 “二进制-十进制”相互转换 十进制->二进制 二进制->十进制 OR运算符(按位或|) OR运算符工作方式 FlagsAttribute AND ...

  7. 跟vczh看实例学编译原理——零:序言

    在<如何设计一门语言>里面,我讲了一些语言方面的东西,还有痛快的喷了一些XX粉什么的.不过单纯讲这个也是很无聊的,所以我开了这个<跟vczh看实例学编译原理>系列,意在科普一些 ...

  8. [ASP.NET MVC 小牛之路]08 - Area 使用

    ASP.NET MVC允许使用 Area(区域)来组织Web应用程序,每个Area代表应用程序的不同功能模块.这对于大的工程非常有用,Area 使每个功能模块都有各自的文件夹,文件夹中有自己的Cont ...

  9. Qt5中的信号槽

    Qt4中的信号槽 Qt4中的信号槽是通过SIGNAL,SLOT两个宏,将参数转换成字符串.Qt编译前,会从源码的头文件中提取由signal和slot声明的信号和槽的函数, 将其组成一张信号和槽对应的字 ...

  10. JavaScript字符串排序localeCompare()笔记

    今天遇到了一个没有接触过的方法,是localeCompare().查了一些相关的文档,给出的定义很模糊,所以就把自己的理解写下来. 首先由例子入手! 已知一串学生姓名的字符串,根据学生姓名的长度按照降 ...