一直想自己在github上面搭建個博客,免費又省事。周末閑來無事,就做了,現在記錄一下
靜態博客框架有Hexo和Jekyll等,它們的區別請自行查詢,我選Hexo
準備
- github
- git
- node.js
- hexo
因為需要在本機上面安裝一些必要的軟件,我的是Mac os,所以我下載了Homebrew
,可以理解為它是QQ軟件助手這樣的東西,需要什么軟件都可以在Homebrew
里面安裝,Mac 直接在終端里面運行如下命令即可
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
官網為:Homebrew
下面介紹的Mac 的軟件安裝方法全部都是用終端命令安裝的,所以必須先安裝Homebrew
注冊github
如果你還沒有github賬號,請在官網注冊 github官網
登錄后,新建一個和你github賬號一樣的Respository,注意名稱一定不能是別的,否則你用“yourname.github.io”這樣的名稱訪問不了你的博客的
至于為什么,詳情請看 github pages 官網介紹
看如下步驟
點擊 綠色的[Create repository]成功新建庫
暫時github先到這步,最后的步驟還需要回到github的,我們繼續往下做
安裝git
- Mac
安裝git,如果你已經安裝了Xcode 套件,那么git已經自帶了,如果沒有安裝Xcode那么在終端里面運行
$ brew install git
看一下終端的顯示信息,就很容易判斷是否安裝成功了,一般情況下如果網絡沒有問題,那么肯定都是安裝成功的,如發生了錯誤,那么再運行這個命令就是了。
去官網直接下載安裝包也可以 git官網
- windows
直接去官網下載吧 git官網
安裝node.js
- Mac
在終端里面直接運行
$ brew install node
看終端信息,是否安裝成功,成功了繼續往下看,不成功再運行一次
或者直接去官網下載安裝包node.js官網
- windows
直接去官網下載安裝包node.js官網
安裝Hexo
-Mac 和windows 都一樣
在終端運行
$ npm install -g hexo-cli
安裝完后,在終端輸入
$ hexo
如果終端出現如下的信息,那么就是成功安裝了
到目前為止,所需的軟件都安裝好了,繼續往下看
生成博客框架
Mac 和Windows都一樣
新建一個文件夾blog,在終端里面進入到blog文件夾,
如:cd blog
注意: 以下所有hexo相關的命令全部都需要在終端進入定位到blog目錄下運行
- Hexo 初始化博客
// 進入到blog 路徑 運行
$ hexo init
- 安裝博客模版所需依賴
$ npm install
寫博客文章
- 新建文章
終端定位到blog文件夾,輸入
$ hexo new '我的博文1'
- 編輯文章內容
在打開博客目錄,找到新建的文件 “我的博文1.md”,這是markdown格式的文件,建議在下載一個Mou 官網
路徑.png
編輯里面的內容,如圖
編寫文章.png - 發布,本地預覽
$ hexo server
看到終端輸出如下信息,就是服務器啟動成功
INFO Start processing
INFO Hexo is running at http://localhost:4000/. Press Ctrl+C to stop.
打開瀏覽器,輸入
http://localhost:4000
看到如下
到這步,本地博客搭建成功了,還剩最后一步,把本地的博客推送到github上面托管就打工告成了
把本地博客推送到github
因為第一步的時候,我們已經新建好github的相關賬號和要用到的Respository了,為了本機電腦能把上面步驟搭建的博客推送到github上面去,必須要讓github認證你的本機是合法有權限推送的機器(或者你不做這步,但是往后每次把博客推送到github的時候,都需要輸入賬號和密碼,比較麻煩),為了省事,我們這樣做
- 在終端運行如下命令,生成ssh的密鑰
ssh-keygen -t rsa -C "Github的注冊郵箱地址"
待秘鑰生成完畢,會得到兩個文件id_rsa和id_rsa.pub,找到這兩個文件,(可在終端運行$ open ~/.ssh
找到這兩個文件)打開id_rsa.pub,Ctrl + a復制里面的所有內容,然后進入https://github.com/settings/keys
Title 隨便填,Key 就把剛剛復制的東西粘貼進去
- 修改博客相關信息,配置和github相關聯
博客目錄.png
打開_config.yml
文件,你會看到里面有很多信息,如下
# Hexo Configuration
## Docs: https://hexo.io/docs/configuration.html
## Source: https://github.com/hexojs/hexo/
# Site
title: Hexo
subtitle:
description:
author: John Doe
language:
timezone:
# URL
## If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/'
url: http://yoursite.com
root: /
permalink: :year/:month/:day/:title/
permalink_defaults:
# Directory
source_dir: source
public_dir: public
tag_dir: tags
archive_dir: archives
category_dir: categories
code_dir: downloads/code
i18n_dir: :lang
skip_render:
# Writing
new_post_name: :title.md # File name of new posts
default_layout: post
titlecase: false # Transform title into titlecase
external_link: true # Open external links in new tab
filename_case: 0
render_drafts: false
post_asset_folder: false
relative_link: false
future: true
highlight:
enable: true
line_number: true
auto_detect: false
tab_replace:
# Category & Tag
default_category: uncategorized
category_map:
tag_map:
# Date / Time format
## Hexo uses Moment.js to parse and display date
## You can customize the date format as defined in
## http://momentjs.com/docs/#/displaying/format/
date_format: YYYY-MM-DD
time_format: HH:mm:ss
# Pagination
## Set per_page to 0 to disable pagination
per_page: 10
pagination_dir: page
# Extensions
## Plugins: https://hexo.io/plugins/
## Themes: https://hexo.io/themes/
theme: landscape
# Deployment
## Docs: https://hexo.io/docs/deployment.html
deploy:
type:
如果你有耐心,一條一條的看就知道每條配置是干嘛用的了。
1.修改博客網站相關信息
title: Hexo #你網站的名字
subtitle: #你網站的子名字
description: #你網站的描述
author: John Doe #網站的作者,所有人
language: zh-CN #網站的語言
timezone: Asia/Beijing #網站的時區
按照你的需要,修改相應的項,注意:每一項的填寫,其:
后面都要保留一個空格,下面也一樣
其他的一些配置,比如你自己買了域名的話就修改
url: http://yoursite.com
就不多說了
2.部署和github的聯系
deploy:
type: git
repo: https://github.com/kaijiemo/kaijiemo.github.io.git #修改這里為你自己的
branch: master #必須是在master
到了這一步了,配置文件的東西全部搞完,激動人心的時候又來了
3.推送到github
hexo deploy
如果運行hexo deploy
命令部署博客到Github的時候會報錯ERROR Deployer not found: git
,可以再在blog目錄終端里面運行
// 安裝部署相關的配置
$ npm install hexo-deployer-git --save
訪問你的 https://yourname.github.io 就能看到你推送上去的博客頁面了
以后每次新增加了頁面都終端依次運行如下兩個命令即可
$ hexo generate
$ hexo deploy
如果新加了文章每出來,記得終端運行一下$ hexo generate
現在一個全新的博客就誕生了
進階
- 換博客主題
- 多設備同步寫blog
待續。。。。。。。