本教程僅適用于window用戶

github是什么?
github可以托管項(xiàng)目,團(tuán)隊(duì)協(xié)作利器,同時(shí)網(wǎng)站上還有很多優(yōu)秀的開(kāi)源項(xiàng)目可以供我們學(xué)習(xí),全球有相當(dāng)多的程序員都活躍在上面,包括一些業(yè)界有名的大神。因此它還被賦予了一個(gè)神圣的稱號(hào)全球最大的同♂性交友網(wǎng)站。學(xué)會(huì)使用github對(duì)我們好處多多~~
github pages
GitHub Pages用于介紹托管在GitHub的項(xiàng)目, 我們可以這個(gè)功能來(lái)做搭建一個(gè)博客。

準(zhǔn)備工作
參考資料(PS慕課網(wǎng)up主這么賣(mài)力難道不給點(diǎn)廣告費(fèi)嗎︿( ̄︶ ̄)︿)
- 慕課網(wǎng)github課程:版本控制入門(mén) – 搬進(jìn) Github如果你是超級(jí)小白,對(duì)github完全沒(méi)有概念,看完這個(gè)課程你能對(duì)github有一定的了解,同時(shí)也能完成輕松這個(gè)教程的操作
- 慕課網(wǎng)node.js安裝視頻課程如果你不會(huì)安裝,請(qǐng)看看這個(gè)視頻
- hexo官方中文文檔Up主建議大家在開(kāi)始動(dòng)手之前先看看官方文檔,對(duì)hexo有一個(gè)概念之后的那些操作都比較容易上手,同時(shí)也少進(jìn)一些坑
1.注冊(cè)github
打開(kāi)github官網(wǎng) https://github.com/ 注冊(cè)一個(gè)賬號(hào)

2.創(chuàng)建名字用username.github.io的倉(cāng)庫(kù),其中username是你注冊(cè)github的時(shí)候的用戶名
3.下載github客戶端 并登陸
4.安裝node.js
開(kāi)始搭建hexo博客
直接使用下載github window 客戶端時(shí)附帶的

gitshell的客戶端,可以免去了我們配置SSH的麻煩,以后也不用每次使用時(shí)都輸入密碼,打開(kāi)Git shell客戶端
接下來(lái)我們開(kāi)始在這個(gè)藍(lán)色的對(duì)話框輸入我們的命令

安裝hexo
在藍(lán)色對(duì)話框輸入命令
npm install -g hexo
創(chuàng)建hexo文件夾
在你想放置博客的文件夾的地方比如(D:\hexo 在D盤(pán)新建一個(gè)文件夾名字為hexo)
此時(shí)你應(yīng)該注意UP主在上面貼出的Git shell客戶端藍(lán)色框框光標(biāo)閃爍前面的路徑問(wèn)題,此路徑應(yīng)該是在C盤(pán)的某個(gè)文件夾\Documents\Github
但是我們是想在D:/hexo放置我們的博客文件,所以我們需要把路徑修改一下。輸入
cd D:hexo

如圖所示,光標(biāo)閃爍的前面的路徑改變了?。〗酉聛?lái)我們很多操作都需要在D:\hexo這個(gè)路徑下進(jìn)行。請(qǐng)對(duì)路徑多多注意,重要的事情說(shuō)三遍??!
成功進(jìn)入該路徑之后,輸入
hexo init
成功初始化hexo這個(gè)文件夾,此時(shí)如果你打開(kāi)hexo這個(gè)文件夾你會(huì)發(fā)現(xiàn)多了很多東西
安裝依賴包
npm install
本地查看
現(xiàn)在我們已經(jīng)搭建起本地的hexo博客了,執(zhí)行以下命令(在D:\hexo),然后到瀏覽器輸入localhost:4000看看。
hexo generate
hexo server
好了,至此,本地博客已經(jīng)搭建起來(lái)了,只是本地哦,別人看不到的。下面,我們要部署到Github。
部署
編輯_config.yml(在D:\hexo下)盡量不要用window自帶的文本編輯器打開(kāi),因?yàn)槿級(jí)嚎s在一起了,你會(huì)很混亂。你在部署時(shí),在這個(gè)文件的最下面修改如下代碼,其中username都換成你的github用戶名。
deploy:
type: git
repository: git@github.com:Username/Username.github.io.git
branch: master
注意:每個(gè)冒號(hào)”:”后邊需要有一個(gè)”空格”
修改之后保存即可
由于
hexo現(xiàn)在支持更加簡(jiǎn)單的命令格式了,比如:
hexo g == hexo generate
hexo d == hexo deploy
hexo s == hexo server
hexo n == hexo new
所以UP主接下來(lái)都會(huì)使用簡(jiǎn)寫(xiě)的命令
回到我們的Git shell客戶端
執(zhí)行下列指令即可完成部署。
hexo g
hexo d
如果在執(zhí)行
hexo d之后出現(xiàn)提示
ERROR Deployer not found: github
請(qǐng)先檢查一下__config.yml的配置文件有沒(méi)有出錯(cuò),若糾正之后還是出現(xiàn)那個(gè)提示,請(qǐng)繼續(xù)往下看
這個(gè)問(wèn)題是由Hexo 2.0過(guò)渡到Hexo 3.0出現(xiàn)的問(wèn)題。
執(zhí)行命令:
npm install hexo-deployer-git --save
如此,便可以像往常一樣使用hexo d命令了。
最后,提幾個(gè)Hexo 3.0版本的幾個(gè)坑。
一個(gè)是無(wú)法生成feed.xml文件。
一個(gè)是無(wú)法生成sitemap.xml文件。
執(zhí)行:
npm install hexo-generator-feed --save
npm install hexo-generator-sitemap --save
隨后在__config.yml配置文件中追加信息:
# Extensions
Plugins:
- hexo-generator-sitemap
- hexo-generator-feed
#sitemap
sitemap:
path: sitemap.xml
#Feed Atom
feed:
type: atom
path: atom.xml
limit: 20
更換主題(非必須)
1. 安裝主題
也許你會(huì)不喜歡你現(xiàn)在的那個(gè)默認(rèn)的主題,那么你可以到WIKI挑選一款你喜歡的
在D:\hexo這個(gè)路徑下執(zhí)行
git clone <repository> themes/<theme-name>
其中<repository>是你選用的主題的github地址 <theme-name>是主題的名字
舉個(gè)例子:UP主現(xiàn)在使用的主題yilia
UP主需要執(zhí)行的操作為
git clone https://github.com/litten/hexo-theme-yilia.git themes/yilia
這個(gè)命令的意思是在D:\hexo\themes這個(gè)路徑上創(chuàng)建一個(gè)文件夾yilia(主題名字)并把從 github上克隆https://github.com/litten/hexo-theme-yilia.git 的這個(gè)項(xiàng)目?jī)?nèi)容放在該文件夾下
2. 配置主題
編輯hexo根目錄下的 _config.yml 這個(gè)文件把其中**theme: **的變更為theme: yilia注意冒號(hào)后面后空格
3. 應(yīng)用主題
cd themes/yilia
git pull
配置
主題配置文件在主目錄下的_config.yml:(此時(shí)是themes/主題名字/_config.yml)這個(gè)文件
# Header
menu:
主頁(yè): /
所有文章: /archives
# 隨筆: /tags/隨筆
# SubNav
subnav:
github: "https://github.com/litten"
weibo: "http://weibo.com/litten225"
rss: "http://feed.feedsky.com/litten"
# facebook: "/"
# google: "/"
# twitter: "/"
# linkedin: "/"
rss: /atom.xml
# Content
excerpt_link: more
fancybox: true
# Miscellaneous
favicon: /favicon.png
avatar: "https://avatars2.githubusercontent.com/u/2024949?v=2&s=150"
share: true
duoshuo: true
此時(shí)我們已經(jīng)把主題配置好了,看看效果
執(zhí)行
hexo g
hexo s
在瀏覽器中輸入:localhost:4000 查看主題效果
把新主題部署到github pages上去
hexo g
hexo d
最后在瀏覽器中輸入: username.github.com username換成你自己的github用戶名,查看效果
每一次對(duì)博客進(jìn)行改動(dòng)之后都需要執(zhí)行
hexo g
hexo d
才能把改動(dòng)部署到網(wǎng)頁(yè)上去
Hexo--使用多說(shuō)評(píng)論插件(非必須)
多說(shuō)是一款追求極致體驗(yàn)的社會(huì)化評(píng)論框,可以用微博、QQ、人人、豆瓣等帳號(hào)登錄并評(píng)論。下面簡(jiǎn)單說(shuō)說(shuō)如何在Hexo的博客中使用多說(shuō)。
1.創(chuàng)建多說(shuō)帳號(hào)
打開(kāi)下面的頁(yè)面
http://duoshuo.com/create-site

填入個(gè)人信息,點(diǎn)擊創(chuàng)建。
其中 多說(shuō)域名 填入的信息就是short_name,在后面要用到。
2.復(fù)制通用代碼保存到博客模板

將通用代碼中的:
請(qǐng)將此處替換成文章在你的站點(diǎn)中的ID 替換為 <%= page.path %>
請(qǐng)?zhí)鎿Q成文章的標(biāo)題 替換為 <%= page.title %>
請(qǐng)?zhí)鎿Q成文章的網(wǎng)址 替換為 <%= page.permalink %>
效果如下:
<div class="ds-thread" data-thread-key="<%= page.path %>" data-title="<%= page.title %>" data-url="<%= page.permalink %>"></div>
將themes/你的主題目錄/layout/_partial/comment.ejs文件替換為:
<% if ( page.comments){ %>
<section id="comment">
<!-- 多說(shuō)評(píng)論框 start -->
<div class="ds-thread" data-thread-key="<%= page.path %>" data-title="<%= page.title %>" data-url="<%= page.permalink %>"></div>
<!-- 多說(shuō)評(píng)論框 end -->
<!-- 多說(shuō)公共JS代碼 start (一個(gè)網(wǎng)頁(yè)只需插入一次) -->
<script type="text/javascript">
var duoshuoQuery = {short_name:"這里填入你的short_name"};
(function() {
var ds = document.createElement('script');
ds.type = 'text/javascript';ds.async = true;
ds.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') + '//static.duoshuo.com/embed.js';
ds.charset = 'UTF-8';
(document.getElementsByTagName('head')[0]
|| document.getElementsByTagName('body')[0]).appendChild(ds);
})();
</script>
<!-- 多說(shuō)公共JS代碼 end -->
</section>
<% } %>
3.在主題中加入多說(shuō)
在themes/你的主題目錄/_config.yml文件中加入:
duoshuo_shortname: 你的short_name
注意在 :冒號(hào)后面有個(gè)空格。
發(fā)表新文章
好了,站點(diǎn)配置好了,我想發(fā)表一篇文章,怎么做呢?
hexo new "my new post"
在D:\hexo\source_posts中打開(kāi)這個(gè)文件,配置開(kāi)頭。
title: my new post #可以改成中文的,如“新文章”
date: 2013-05-29 07:56:29 #發(fā)表日期,一般不改動(dòng)
categories: blog #文章文類(lèi)
tags: [博客,文章] #文章標(biāo)簽,多于一項(xiàng)時(shí)用這種格式
-這里是正文,用markdown寫(xiě).markdown的語(yǔ)法可以去網(wǎng)上搜
hexo s
訪問(wèn)localhost:4000預(yù)覽效果。(退出server用Ctrl+c)
hexo d
同步到github。訪問(wèn)網(wǎng)站看看效果。
到這里為止,我們的網(wǎng)站的基本模型就算是搭建好了
參考鏈接
1.http://zipperary.com/categories/hexo/
2.http://ogeeker.com/2015/03/14/Hexo-Deployer-not-found-github/
3.http://xring.org/2015/02/17/Hexo-%E4%BD%BF%E7%94%A8%E5%A4%9A%E8%AF%B4%E8%AF%84%E8%AE%BA%E6%8F%92%E4%BB%B6/
總結(jié)
--
這次搭建這個(gè)博客在網(wǎng)上搜了很多教程。因?yàn)橹巴耆涣私鈎exo就直接按照教程來(lái)做了。踩了很多坑。自己總結(jié)出來(lái),對(duì)于一個(gè)完全不了解的東西,在動(dòng)手實(shí)踐之前還是要大概過(guò)一遍官方文檔,然后對(duì)這個(gè)事物的框架有個(gè)大概的認(rèn)知。能避免許多坑。很多教程很簡(jiǎn)單。但是每個(gè)人的運(yùn)行環(huán)境都不太一樣,有的同學(xué)按照教程過(guò)一遍很快就做好了。不是每個(gè)人都那么幸運(yùn)。所以不能太依賴教程,要多看文檔。