GitHub Pages上使用Hexo框架建立静态博客

来源:互联网 发布:网络吞吐量和带宽 编辑:程序博客网 时间:2024/05/16 07:26

-1- 安装配置github

使用GitHub Pages建立博客

GitHub Pages分两种,一种是你的GitHub用户名建立的username.github.io这样的用户、组织页(站),另一种是依附项目的pages。

想建立个人博客是用的第一种,形如cnfeat.github.io这样的可访问的站,每个用户名下面只能建立一个。

github上建立仓库
登录后系统,在github首页,点击页面右下角「New Repository」
填写项目信息:

project name:kealqqq.github.io

这里注意Github Pages的Repository名字是特定的,比如我Github账号是kealqqq,那么我Github Pages Repository名字就是kealqqq.github.io
点击「Create Repository」 完成创建。

配置SSH keys

我们如何让本地git项目与远程的github建立联系呢?用SSH keys。

检查SSH keys的设置

首先我们需要检查你电脑上现有的ssh key:

$ cd ~/. ssh 检查本机的ssh密钥

如果提示:No such file or directory 说明你是第一次使用git。
如果里面有文件说明只有配置过的,那么删除之前的。

$ rm *

生成新的SSH Key:

$ ssh-keygen  -t rsa -C "kealqqq @gmail.com"Generating public/private rsa key pair.Enter file in which to save the key (/Users/your_user_directory/.ssh/id_rsa):<回车就好>

这里建议使用你的github邮箱。
然后系统会要你输入密码:

Enter passphrase (empty for no passphrase):<输入加密串>Enter same passphrase again:<再次输入加密串>

在回车中会提示你输入一个密码,这个密码会在你提交项目时使用,如果为空的话提交项目时则不用输入。这个设置是防止别人往你的项目里提交内容。

NOTE: 输入密码的时候没有*字样的,你直接输入就可以了。

添加SSH Key到GitHub

在本机设置SSH Key之后,需要添加到GitHub上,以完成SSH链接的设置。

1、打开本地C:\Documents and Settings\Administrator.ssh\id_rsa.pub文件。此文件里面内容为刚才生成人密钥。如果看不到这个文件,你需要设置显示隐藏文件。准确的复制这个文件的内容,才能保证设置的成功。

2、登陆github系统。点击右上角的 Account Settings—>SSH Public keys —> add another public keys

3、把你本地生成的密钥复制到里面(key文本框中), 点击 add key 就ok了

测试

可以输入下面的命令,看看设置是否成功,git@github.com的部分不要修改:

$ ssh -T git@github.com

如果是下面的反馈:

The authenticity of host 'github.com (207.97.227.239)can't be established.`RSA key fingerprint is:~~~~Are you sure you want to continue connecting (yes/no)?不要紧张,输入yes就好,然后会看到:Hi cnfeat! You've successfully authenticated, but GitHub does not provide shell access.

设置用户信息

现在你已经可以通过SSH链接到GitHub了,还有一些个人信息需要完善的。

Git会根据用户的名字和邮箱来记录提交。GitHub也是用这些信息来做权限的处理,输入下面的代码进行个人信息的设置,把名称和邮箱替换成你自己的,名字必须是你的真名,而不是GitHub的昵称。

$ git config --global user.name "cnfeat"//git用户名
$ git config --global user.email "cnfeat@gmail.com"//填写自己的邮箱
SSH Key配置成功
本机已成功连接到github。

NOTE: 这里会遇到Permission denied (publickey)问题。
可以参考http://blog.itpub.net/25851087/viewspace-1262468/ 解决。
具体我用的方法是,将SSH配置文件ssh_config在自己本地的路径:
C:\Users\Administrator\AppData\Local\GitHub\PortableGit_*\etc\ssh目录下面的,ssh_config配置文件中的IdentityFile的值改为~/.ssh/id_rsa

-2-安装node.js

http://nodejs.org/download/
安装时直接保持默认配置即可

-3-安装Hexo

打开Git命令行,执行如下命令
$ npm install -g hexo
在电脑中建立一个名字叫「Hexo」的文件夹(比如我建在了D:\Hexo),然后在此文件夹中右键打开Git Bash,执行下面的命令。
$ hexo init
Hexo随后会自动在目标文件夹建立网站所需要的文件。然后按照提示,在 D:/Hexo下执行
$ npm install
会在D:\Hexo目录中安装 node_modules

运行hexo服务

$ hexo server
[info] Hexo is running at http://localhost:4000/. Press Ctrl+C to stop.

打开浏览器访问 http://localhost:4000 可以看到hexo已经帮你生成了一片博客

NOTE: 这里可能出现这个网页很久都打不开的情况,这种情况下一般是由于4000端口被占用了,换一个端口就可以了。
hexo server -p 5000 使用5000这个端口访问就可以了

建立新的静态页面

新打开一个git bash命令行窗口,cd D:/Hexo,执行下面的命令

$ hexo new "My New Post"
[info] File created at d:\Hexo\source\_posts\My-New-Post.md
刷新http://localhost:4000/,可以发现已生成了一篇新文章 “My New Post”

执行下面的命令,将markdown文件生成静态网页。
$ hexo generate
该命令执行完后,会在 D:\Hexo\public\ 目录下生成一系列html,css等文件。

编辑文章

hexo new "My New Post"会在D:\Hexo\source\_posts目录下生成一个markdown文件:My-New-Post.md

可以使用一个支持markdown语法的编辑器来编辑该文件。

部署到Github

部署到Github前需要配置_config.yml文件,首先找到下面的内容

# Deployment## Docs: http://hexo.io/docs/deployment.htmldeploy:  type:

然后将它们修改为

# Deployment## Docs: http://hexo.io/docs/deployment.htmldeploy:  type: git   #注意这里必须修改成为git 而不是github  repository: git@github.com:zhchnchn/zhchnchn.github.io.git  branch: master

部署步骤

每次部署的步骤,可按以下三步来进行。

$ hexo clean
$ hexo generate
$ hexo deploy

NOTE:搭建 hexo,在执行 hexo deploy 后,出现 error deployer not found:github 的错误。解决方案如下:
~hexo 更新到3.0之后,deploy的type 的github需要改成git。
~还需要安装部署的插件 $ npm install hexo-deployer-git --save

0 0