您的位置:首页 > 编程语言

hexo+github搭建个人博客

2017-02-11 18:10 155 查看
本文记录了我搭建博客的全过程

欢迎来我的博客参观

我采用hexo+github的方法搭建

什么是hexo+github?

Hexo(?) 是一个快速、简洁且高效的博客框架。Hexo 使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。

Github PagesGithub(?)提供的一项免费的静态页面托管服务,域名为your_name.github.io,your_name 为你的 Github 用户名。

于是,借助上文两个工具,我们就能搭建一个自己的个人博客网站,而且,通过对上述两个工具的介绍,相信你也猜到了,

我们的搭建过程主要分为两步:

生成本地网站文件

部署到github仓库

1 生成本地网站文件

1.1 安装

我们需要安装以下软件:

- git (如果已经安装github for windows则忽略此步)

- Node.js

安装git之后需要配置系统环境变量,不然后面的操作会出错,参考:windows安装git和环境变量配置。以上

步骤完成之后,使用npm命令安装hexo

$ npm install -g hexo-cli


1.2 建立本地网站

在本地某一位置新建
your_name.github.io
文件夹,

该文件夹如果与guihub for windows 的 clone path 位于同一个分区,那么此文件夹最好是clone path 的子文件夹,

否则在个git shell 无法通过 命令行 中进入该目录,所以最好是不要位于同一个分区。

通过 命令行进入该目录,键入:

npm config set registry "https://registry.npm.taobao.org"


该命令将源镜像切换到淘宝,因为从默认的npm镜像下载实在太慢。

还是在
your_name.github.io
目录下,执行:

hexo init
npm install


完成后,该目录下为:

├── _config.yml
├── package.json
├── scaffolds
├── node_modules
├── source
|   ├── _drafts
|   └── _posts
└── themes


_config.yml
文件存放着网站的配置信息,可以在这里配置大部分的参数。

package.json
文件存放着插件信息,从中可以查看那些插件已经安装。

scaffolds
是模板文件夹,新建文章时,Hexo 会根据 scaffold 来建立文件,不过这个模板和后面的主题里指的模板不一样。

source
是存放用户资源的地方的文件夹,除 posts 文件夹之外,开头命名为 (下划线) 的文件 / 文件夹和隐藏的文件将会被忽略。Markdown 和 HTML 文件会被解析并放到 public 文件夹(别急,等下会生成的),而其他文件会被拷贝过去。

themes
主题文件夹,Hexo
adbc
会根据主题来生成静态页面,我们以后自己安装的主题也都会放在这个文件夹下面,默认的 landscape 主题已经在里面了。

1.3 自定义(可选)

_config.yml
中可以修改一些网站配置信息,具体依据主题不同而不同。

source\_posts
中新建
.md
文件,用markdown语言书写博文。

Themes | Hexo 下载更漂亮的主题。(如何操作?

1.3 启动本地服务预览

hexo generate
hexo server


访问http://localhost:4000/

### 2 部署到github仓库

2.1 准备工作

以上命令我们都是在CMD中键入的,接下来部署部分的所示命令都在
Git Bash
中键入。

your_name.github.io
根目录下右键-> git Bash here

如果已经安装github则直接在git shell进入此目录

你的github网页
your_name.github.io
新建仓库。

#### 2.2 连接到github

如果你之前安装了github for windows 并已登录,则跳过此步前往 2.3 部署

2.2.1 生成本地密钥

在 Git Bash 下执行:

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"


此命令在本地生成 SSH key (?) ,SSH key相当于一个信任凭证,用以和

github建立连接,其中,
your_email@example.com
是你的 Github 注册邮箱,随后git Bash 出现:

Generating public/private rsa key pair.
Enter a file in which to save the key
(/Users/you/.ssh/id_rsa): [Press enter]


这表示 SSH key生成好了,一般在本地
C:\Users\foobar\.ssh\id_rsa
,回车后

又出现:

Enter passphrase (empty for no passphrase): [Type a passphrase]
Enter same passphrase again: [Type passphrase again]


表示让你来设置密码(可选),不设置就直接回车。

有了信任凭证,接下来开启 ssh-agent(?) 程序,

它是一个在本地登录会话持续时间内,将未加密的密钥存储在内存中,并使用 Unix 域套接字与 SSH 客户端进行通信的程序

eval "$(ssh-agent -s)"


将这个 SSH key 添加到 ssh-agent 里去,键入:

ssh-add ~/.ssh/id_rsa


2.2.2 将密钥添加到github

复制 SSH Key ,有两种方法:

- 直接在本地用记事本
C:\Users\foobar\.ssh\id_rsa.pub
文件,ctrl+A全选,ctrl+C复制。

- 键入:

$ clip < ~/.ssh/id_rsa.pub
# Copies the contents of the id_rsa.pub file to your clipboard


然后登录github,点击头像-> setting -> SSH and GPG keys -> New SSH key 或者 Add SSH key

Title 这里输入任意值,比如 your_name - PC,然后在 Key 里面把 SSH Key 粘贴进去。

2.2.3 测试 SSH 连接

键入:

ssh -T git@github.com


若显示如下信息:

The authenticity of host 'github.com (192.30.252.1)' can't be established.
RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
Are you sure you want to continue connecting (yes/no)?


键入yes,回车,若输出如下则表示连接好了

Hi username! You've successfully authenticated, but GitHub does not
provide shell access.


2.3 部署

键入如下命令安装
hexo-deployer-git
插件::

npm install hexo-deployer-git --save


_config.yml
中修改参数:

deploy:
type: git
repo: https://github.com/your_name/your_name.github.io.git branch: master


此处
repo:
后的参数还可改为

ssh://git@github.com/your_name/your_name.github.io


在此要强调的是:所有冒号后面都必须有一个空格必须!如果

你用了支持markdown语言的文本编辑器,就能看到代码高亮区分效果。

最后,键入如下命令将网站部署到github:

hexo d


第一次部署github会弹出窗口验证账号,以后每次修改本地文件后,再次部署前,

都最好先键入:

hexo clean


来清理缓存。

现在,所有步骤都完成了,试试在浏览器访问你的网站
your_name.github.io
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: