hexo在git上搭建个人博客
公司实习第一天接到的任务是:搭建一个基于Nodejs的开源项目的开发环境,接到任务时以为不是很困难,后来才知道该项目已于去年被废弃,搭配环境的时候遇到了不少问题,折腾了两天还是没有最终完成...
不过也不是没有收获的,起码对Nodejs多了些了解,正好也想自己弄个Blog,就乘着周末搭建了个,这里记录下过程。
Windows下Git的配置
由于这里只是搭建个环境,不需要其他的一些工具,简单的安装GitForWindows就行了,需要注意的时,在安装时选择Run Git from the windows command Prompt,这样在Windows的命令行可以直接使用git命令。
- 配置用户名和邮箱
git config user.name "username"
git config user.email "email"
- Github SSH Key配置
在推送文章到Github时,使用ssh进行验证可以免于输入账户和密码。- 首先在Git Bash使用命令
ssh-keygen -t rsa -b 4096 -C "your email"生成公钥和私钥,运行该命令后会有提示的输入信息,可以直接回车跳过。 - 添加私钥到ssh。这时有可能ssh-agent没有启动,可以现在Git Bash中运行命令
eval "$(ssh-agent -s)来启动,然后运行ssh-add 私钥名称添加私钥。(默认的私钥名称是rsa,如果在生成私钥时设定了名称,就输入上次设定的名称) - 添加公钥到Github的账号。首先使用命令
clip < rsa.pub将公钥的内容复制到剪贴板,然后登录Github,选择settings > SSH Keys > New SSH Key ,将公钥内容粘贴过去,点击 Add New SSH即可。 - 验证ssh的配置是否成功。上述步骤完成后,在Git Bash中运行命令
ssh git@github.com,根据提示信息判断ssh的配置是否成功。
- 首先在Git Bash使用命令
hexo的配置
- 下载安装Nodejs官网下载
- 使用npm安装hexo
npm install -g hexo(参数g表示的hexo是全局安装),如果下载的比较慢可以指定其他的源,这里提供我使用的安装源npm install -g hexo --registry http://registry.cnpmjs.org - 在建立Blog的文件夹下执行命令
hexo init,进行hexo的初始化 - 在初始化完成后,文件夹会多了一些文件,这是执行命令
npm install下载hexo所需的依赖项。(同上面一样可以指定别的源安装npm install --registry http://registry.cnpmjs.org - 上述步骤完成后,hexo的配置已经基本完成,可以执行
hexo server,然后访问localhost:4000查看效果。(hexo默认的端口号是4000,但是4000端口如果被其他进程占用的话,这时访问localhost:4000会得不到响应。解决这个问题的方法是指定其他的端口hexo server -p 8081,访问localhost:8081) - 在github上新建一个repository保存Blog的页面。这里需要注意的是repository 的name有个特别的限定,就是你的github的username.github.io。(例如,我的github的用户名是brookicv,那么我新建的repsoitory name就是 brookicv.github.io)
- 修改配置文件。首先打开Blog根目录下面的_config.yml,在里面添加deploy到Github上所需要的信息( 注意将username替换掉)
deploy:
type: git
repository: ssh://git@github.com/username/username.github.io.git
branch: master
- 将Blog部署到Github。在deploy之前,需要运行命令
hexo generate重新生成(修改过_config.yml或者文章后都要记得执行下该命令),然后运行hexo deploy命令就会将Blog的内容推送到Githu。部署完成后,访问usernmae.github.io就可以查看你的Blog内容了。 - hexo主题的使用。hexo有很多的主题,并且使用也非常的方便。例如要使用yilia这款主题,可以在Blog的根目录下运行
git clone https://github.com/litten/hexo-theme-yilia.git themes/yilia
然后修改_config.yml的theme项为yilia就可以了。 - 添加新文章。运行命令
hexo new articlename会在source/_posts/articlename.md,编辑该md文件后,运行hexo generate和hexo deploy命令就可以在github上看到你的新文章。
后面的话
流水账似的记录下使用hexo在Githu上搭建个人博客的过程。也是一个新的开始,从校园走向社会,开始自己的第一份工作,这几天还是挺迷茫的,不知道以后的技术选择是什么方向,并且感觉自己对第一份工作的选择的技术方向是不是太过看重了...
以后坚持记录自己的学习过程!!!
hexo在git上搭建个人博客的更多相关文章
- 用Hexo在GitHub上搭建个人博客
我用Hexo在GitHub上搭建好了自己的博客,我的这第一篇博客就来说说搭建的过程. 1 环境配置 本文使用环境如下: Windows 10 node.js v8.1.3 git v2.13.2 np ...
- 使用Hexo在github上搭建个人博客
最近正好在学习前端开发,想着搭建一个属于自己的个人博客,把自己的技能树整理整理,温故而知新. 如果你有前端开发经验,那么搭建这样的博客就很简单了. 一 什么是Hexo Hexo 是一个快速.简 ...
- HEXO与Github.io搭建个人博客
HEXO与Github.io搭建个人博客 HEXO搭建 HEXO是基于Node.JS的一款简单快速的博客框架,能够支持多线程,支持markdown,可以将生成的静态网页发布到github.io以 ...
- 在github上搭建个人博客并在线更新
换博客比更博还勤的我终于决定写一篇博客搭建教程了.. FAQ Q:\(hexo\)需要本地编译.\(jekyll\)虽然可以直接上传\(md\)..但是如果在github上直接编译也太难受了叭,毕竟不 ...
- 利用Octopress在github pages上搭建个人博客
利用Octopress在github pages上搭建个人博客 SEP 29TH, 2013 在GitHub Pages上用Octopress搭建博客,需要安装ruby环境.git环境等.本人在Fed ...
- 【网站开发】在新浪SAE上搭建一个博客
概述 在新浪SAE上搭建一个博客 1.访问新浪SAE站点 http://sae.sina.com.cn/ 2.注册新浪SAE 3.选择应用仓库 4.选择WordPress 5.安装WordPress ...
- 使用Coding.net+Hexo+node.js+git来搭建个人博客
使用Coding.net来搭建基于Hexo的博客 一.准备工作 什么是Coding.net Coding可以说,就是国产的Github,但是,有一个功能使它似乎超越了GitHub-那就是 Web ID ...
- Hexo+Github/Coding免费搭建个人博客网站
体验更优排版请移步原文:http://blog.kwin.wang/other/hexo-github-build-blog.html 很早之前就想搭建一个属于自己的博客网站,一方面是给自己做笔记,把 ...
- 使用jekyll在GitHub Pages上搭建个人博客【转】
网上有不少资源,但大多是“授人以鱼”,文中一步一步的告诉你怎么做,却没有解释为什么,以及他是如何知道的.他们默认着你知道种种专业名词的含义,默认着你掌握着特定技能.你折腾半天,查资料,看教程,一步步下 ...
随机推荐
- JSP页面以及JSP九大隐式对象
JSP全称是Java Server Pages,它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术. JSP这门技术的最大的特点在于,写jsp就像在写html,但它相比 ...
- SDOI 2016 生成魔咒
题目大意:一个字符串,刚开始为空,依次在后面添加一个字符,问每次添加完字符后本质不同的字符串有多少种 后缀自动机裸题,添加字符时,更新的结点个数即为新增加的子串 #include<bits/st ...
- opecv获取图像轮廓
获取轮廓 #import <opencv2/opencv.hpp> #import <opencv2/imgcodecs/ios.h> #import <opencv2/ ...
- SQL Server差异备份的备份/还原原理
SQL Server差异备份的备份/还原原理 记住一点:差异备份是基于最后一次完整备份的差异,而不是基于最后一次差异的差异 备份过程: 1-完整备份之后有无对数据库做过修改,如果有,记录数据库的最 ...
- 一步步学习javascript基础篇(5):面向对象设计之对象继承(原型链继承)
上一篇介绍了对象创建的几种基本方式,今天我们看分析下对象的继承. 一.原型链继承 1.通过设置prototype指向“父类”的实例来实现继承. function Obj1() { this.name1 ...
- JavaScript 事件管理
在设计JavaScript xxsdk的时候考虑到能让调用者参与到工作流程中来,开始用了回调函数.如下: this.foo = function(args,callbackFn) { //do som ...
- 在浏览器的背后(二) —— HTML语言的语法解析
当你看到这篇文章意味着我辜负了@教主的殷切期望周末木有去约会,以及苏老师@我思故我在北京鼓楼的落井下石成功了…… 本文demo powered by 已经结婚的@老赵的不再维护的wind.js 物是人 ...
- 【VC++技术杂谈008】使用zlib解压zip压缩文件
最近因为项目的需要,要对zip压缩文件进行批量解压.在网上查阅了相关的资料后,最终使用zlib开源库实现了该功能.本文将对zlib开源库进行简单介绍,并给出一个使用zlib开源库对zip压缩文件进行解 ...
- TODO:软件升级的那些事
TODO:软件升级的那些事 软件升级,指软件从低版本向高版本的更新.由于高版本常常修复低版本的部分BUG,所以经历了软件升级,一般都会比原版本的性能更好,得到优化的效果,用户也能有更好的体验. 最近常 ...
- Zookeeper API for JAVA实战与应用
package com.zookeeper.watcher; import java.util.List; import java.util.concurrent.CountDownLatch; im ...