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上搭建个人博客【转】
网上有不少资源,但大多是“授人以鱼”,文中一步一步的告诉你怎么做,却没有解释为什么,以及他是如何知道的.他们默认着你知道种种专业名词的含义,默认着你掌握着特定技能.你折腾半天,查资料,看教程,一步步下 ...
随机推荐
- opengles 矩阵计算
总的变换矩阵: matrix = projection * view * model 模型矩阵: modelMatrix=translateMatrix * scaleMatrix * rotateM ...
- 前端-SEO
SEO是 search Engine Optimization (搜索引擎优化) SEO: ①白帽SEO(普通SEO做的优化) 网站标题.关键字.描述 网站内容优化 Robot.txt文件 网站地 ...
- gem安装报错解决方法
gem install rdiscount -- --use-system-libraries
- jvm的内存分配总结
最近看了周志明版本的<深入理解Java虚拟机>第一版和第二版,写的很好,收获很多,此处总结一下. jvm中内存划分: 如上图,一共分为五块,其中: 线程共享区域为: 1.java堆 ...
- etcd:用于服务发现的键值存储系统
etcd是一个高可用的键值存储系统,主要用于共享配置和服务发现.etcd是由CoreOS开发并维护的,灵感来自于 ZooKeeper 和 Doozer,它使用Go语言编写,并通过Raft一致性算法处理 ...
- Java NIO3:通道和文件通道
通道是什么 通道式(Channel)是java.nio的第二个主要创新.通道既不是一个扩展也不是一项增强,而是全新的.极好的Java I/O示例,提供与I/O服务的直接连接.Channel用于在字节缓 ...
- [OpenGL][SharpGL]用Polygon Offset解决z-fighting和stitching问题
[OpenGL][SharpGL]用Polygon Offset解决z-fighting和stitching问题 本文参考了(http://www.zeuscmd.com/tutorials/open ...
- Vue 入门指南
英文:http://vuejs.org/guide/index.html 介绍 vue.js 是用来构建web应用接口的一个库 技术上,Vue.js 重点集中在MVVM模式的ViewModel层,它连 ...
- spring mvc Error instantiating class ** with invalid types () or values (). Cause: java.lang.NoSuchMethodException:
一般引起这种问题的原因是 bean和mapper里面的字段未对应上,或者 bean里面没有默认的构造函数引起的.我今天是后面的一个,自己写了带参数的构造函数引起的这个问题...
- 对Big Table进行全表更新,导致 Replication 同步数据的过程十分缓慢
在Publisher database中更新一个big table,数据行数是3.4亿多.由于没有更新 clustered Index key,因此,只产生了3.4亿多个Update Commands ...