Hexo+Github搭建個(gè)人博客(小白篇)


最近想要開始寫博客了,一來(lái)可以梳理一下當(dāng)天所學(xué)的東西,二來(lái)到以后求職和升學(xué)都有用,另外,還可以記錄和分享一些生活中的趣事。

于是,就在網(wǎng)上找了一圈,發(fā)現(xiàn)很多博客都不怎么漂亮,那不如自己搭建一個(gè),google了一下,果然有框架可以用來(lái)快速搭建。

順便就記錄搭建過(guò)程作為小白教程,正好搭建好以后還能充充數(shù)。


1.需要具備哪些條件?

1.無(wú)需技術(shù)基礎(chǔ)
2.不需要花錢,除非你想要買個(gè)性域名(20+刀兩年)
3.幾個(gè)小時(shí)的時(shí)間(想要優(yōu)化配置需要另外的時(shí)間)
4.博主是用windows系統(tǒng)的,用其他系統(tǒng)的小伙伴也不必?fù)?dān)心,只有第一步的安裝稍有不同,而且用linux系統(tǒng)和mac os的同學(xué)下載安裝更簡(jiǎn)單,用命令行就可以搞定了。

2.搭建全過(guò)程

2.1下載安裝Git、Node.js和Hexo

小白們不要被這幾個(gè)英文字母嚇到,搭建這個(gè)博客你不必深入理解這些,只需要跟著博文做下去就可以了。

2.1.1下載安裝Git

Git是一個(gè)分布式的版本控制工具,也是目前最流行的。它可以幫助你管理本地倉(cāng)庫(kù),并且把本地的項(xiàng)目托管到遠(yuǎn)端的Github上。也就是你需要建立一個(gè)倉(cāng)庫(kù)來(lái)放你的博客網(wǎng)站項(xiàng)目,并部署到Github。
這里推薦廖雪峰的Git教程,不需要看完,只需要看安裝的部分,幾分鐘就搞定。如果覺(jué)得這個(gè)教程還不清楚,任何問(wèn)題都可以Google或者百度。

2.1.2下載安裝Node.js

后文的npm開頭的命令都需要依賴Node.js。直接到Node.js的官方網(wǎng)站下載安裝,看到最大的那兩個(gè)綠色按鈕,下載v6的就行。下載下來(lái)以后一路next下一步就可以了。

2.1.3下載安裝Hexo

hexo是一個(gè)強(qiáng)大又方便的靜態(tài)博客框架,有了它就相當(dāng)于有了一個(gè)博客的架子,只需要往里面填東西和修改一些配置就可以搭建好一個(gè)博客了。這里就要用到前面安裝好的Git Bash,如果你跟博主一樣安裝的是Git Shell,也沒(méi)有任何問(wèn)題,效果都是一樣的。

2.1.3.1打開你的Git Bash或者Git Shell

一般安裝好Git Bash以后,右鍵任何地方,都會(huì)
看到Bash和GUI(圖形界面)。博主的Shell直接放在桌面。

右鍵菜單

打開是默認(rèn)進(jìn)入到Git的根目錄下的,用Bash的同學(xué)應(yīng)該看到的是$符號(hào)開頭。

2.1.3.2依次執(zhí)行以下指令:

1、安裝hexo

npm install hexo-cli -g

2、安裝hexo-deployer-git(從名字看也知道它是用來(lái)把博客部署到git上的)

npm install hexo-deployer-git --save

缺少第二步,在后面的步驟會(huì)出現(xiàn)以下錯(cuò)誤信息:

ERROR Deployer not found : github

到這里所有需要下載安裝的都安裝完了。

2.2用hexo在本地搭建博客

2.2.1初步搭建

1.創(chuàng)建放置博客文件的文件夾,可以任意路徑(不建議中文路徑,以免碰到不必要的錯(cuò)誤)任意命名,建議直接創(chuàng)建在Git的根目錄下。然后用cd命令進(jìn)入該文件夾。

cd 你的文件夾名字

對(duì)于文件夾放在其他地方的同學(xué)

cd 你文件夾所在路徑
進(jìn)入文件夾

注:再次說(shuō)明一下,博主用的是shell,所以跟用bash的同學(xué)看到的不同,你們看到的應(yīng)該是$符號(hào)開頭的

2.在該文件夾下執(zhí)行以下命令,Hexo會(huì)自動(dòng)下載并初始化搭建博客所需的所有文件。

hexo init
正在下載并初始化

看到以下信息,說(shuō)明你的博客已經(jīng)初步搭建好了。

INFO  Start blogging with Hexo!

3.安裝依賴包

npm install
安裝依賴包成功

其實(shí)只要沒(méi)有看到ERROR字樣就成功了,之后的命令也是。

2.2.2驗(yàn)收一下初步搭建的成果

同樣是在Blog文件夾下,執(zhí)行以下命令:
1.生成靜態(tài)文件

hexo g

2.啟動(dòng)服務(wù)器,進(jìn)行本地預(yù)覽(也就是只有本機(jī)能夠訪問(wèn)博客)

hexo s

成功啟動(dòng)服務(wù)器

我們看到最后一句話,說(shuō)明hexo已經(jīng)運(yùn)行在本地端口4000了,我們可以用瀏覽器訪問(wèn)這個(gè)地址進(jìn)行預(yù)覽。
你搭建的一個(gè)博客雛形已經(jīng)出現(xiàn)了。
博客預(yù)覽

注:以后配置博客主題時(shí),也會(huì)頻繁使用到這兩個(gè)命令進(jìn)行預(yù)覽,滿意后再部署到Github

2.3將本地的博客部署到GitHub

2.3.1在Github創(chuàng)建倉(cāng)庫(kù)

1.注冊(cè)、登錄不用我說(shuō)了。牢記用戶名、郵箱和密碼,以后都會(huì)要用到。
2.創(chuàng)建新的倉(cāng)庫(kù)


創(chuàng)建倉(cāng)庫(kù)按鈕

只需要填寫倉(cāng)庫(kù)名,這個(gè)名字的格式必須為username.github.io,如下圖,username必須為你Github的用戶名,也就是用來(lái)登錄的那個(gè)。


設(shè)置倉(cāng)庫(kù)名

這里是因?yàn)槲抑皠?chuàng)建過(guò)了這個(gè)倉(cāng)庫(kù),所以提示錯(cuò)誤信息,可以忽略。
3.第一次使用Github的同學(xué)需要配置SSH key,具體SSH key是什么,有興趣的同學(xué)可以Google或者百度,我們這里配置的原因是為了以后部署博客到Github不用再輸入密碼,你可以簡(jiǎn)單理解為你的主機(jī)獲得了進(jìn)入Github的鑰匙。

點(diǎn)擊右上角自己的頭像,選擇設(shè)置選項(xiàng)。


setting

點(diǎn)擊左側(cè)的SSH and GPG keys,然后點(diǎn)擊右上角New SSH key,如圖:


創(chuàng)建SSH key

這里的title可以任意命名,建議可以命名為“主機(jī)+系統(tǒng)”以便以后喚醒你的記憶。知道當(dāng)初配置它是給哪臺(tái)主機(jī)的哪個(gè)系統(tǒng)的。
Key值需要生成,通過(guò)在Git Bash或者Git Shell執(zhí)行以下代碼:
ssh-keygen -t rsa -C "你Github上綁定的郵箱"
生成密匙對(duì)

如圖,因?yàn)槲乙呀?jīng)在這個(gè)默認(rèn)路徑下生成過(guò)了,也不想覆蓋。
你們看到的應(yīng)該是這樣:

Generating public/private rsa key pair.
Enter file in which to save the key (/Users/your_user_directory/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again: 

依次詢問(wèn)了保存密匙對(duì)的路徑、密碼、密碼缺少,博主的做法是全部回車,保存在括號(hào)里的默認(rèn)路徑,不設(shè)密碼。你也可以這樣做或者改路徑、設(shè)密碼。

Your identification has been saved in /Users/your_user_directory/.ssh/id_rsa.
Your public key has been saved in /Users/your_user_directory/.ssh/id_rsa.pub.

看到以上字樣說(shuō)明生成密匙對(duì)成功,一個(gè)私鑰,一個(gè)公鑰。沿著第二個(gè)路徑找到公鑰,用文本編輯器打開,復(fù)制里面的key值到之前看到的Github創(chuàng)建SSH key需要填的文本框中。點(diǎn)擊創(chuàng)建即可。
4.在Bash或Shell中執(zhí)行以下命令驗(yàn)證是否成功

ssh -T git@github.com

如果是第一次的會(huì)提示是否continue,輸入yes就會(huì)看到:You’ve successfully authenticated, but GitHub does not provide shell access ,這就表示已成功連上github。

2.3.2配置站點(diǎn)文件,部署博客到Github

1.先設(shè)置全局的username和email,因?yàn)镚ithub每次commit都會(huì)記錄他們。

git config --global user.name "你的名字"  
git config --global user.email "你的郵箱"

2.編輯你的博客文件夾下的的_config.yml配置文件,建議使用Notepad++或者Sublime。在配置文件底部,配置如下信息。

deploy: 
  type: git
  repository: http://github.com/{github_username}/{github_username}.github.io.git
  branch: master

注:配置文件中的冒號(hào)后必須有一個(gè)空格,且這個(gè)冒號(hào)不能是中文冒號(hào),不然會(huì)報(bào)錯(cuò)。

_config.yml文件底部

3.執(zhí)行以下命令完成部署。分別是生成靜態(tài)文件、部署到Github。

 hexo g
 hexo d

4.登錄Github查看倉(cāng)庫(kù)username.github.io、訪問(wèn)username.github.io,看一下是否部署成功。

username.github.io倉(cāng)庫(kù)
username.github.io倉(cāng)庫(kù)內(nèi)容

可以看到我們的本地文件以及發(fā)布到Github了。

username.github.io

我們通過(guò)用瀏覽器訪問(wèn)username.github.io也同樣訪問(wèn)到了博客,注意,這里已經(jīng)不是本地訪問(wèn)了。我們的博客成功發(fā)布了!快用小伙伴的電腦看一看吧。

2.4嘗試發(fā)表一篇文章

hexo寫文章是用Markdown的。Markdown是一種可以使用普通文本編輯器編寫的標(biāo)記語(yǔ)言,通過(guò)簡(jiǎn)單的標(biāo)記語(yǔ)法,它可以使普通文本內(nèi)容具有一定的格式。不用擔(dān)心,這東西幾分鐘就學(xué)會(huì)了,我們來(lái)看一看例子。
你可以用Notepad++打開Blog\source_post路徑下的hello-world.md文件,看看這個(gè)實(shí)例,對(duì)比一下瀏覽器打開的網(wǎng)站里的這篇博客示例,大概就懂怎么回事了。更多的語(yǔ)法可以Google或者百度。這里推薦一篇簡(jiǎn)單易懂的教程。簡(jiǎn)書寫文章也可以設(shè)置成用Markdown編輯,所以簡(jiǎn)書也是一個(gè)不錯(cuò)的Markdown編輯器,以后寫文章,可以先在簡(jiǎn)書里編輯,設(shè)置成雙屏模式還可以預(yù)覽效果,很方便。

用以下命令發(fā)表一篇新的文章:

hexo new "文件名"

這個(gè)文件名建議命名為你的博客標(biāo)題。
執(zhí)行這個(gè)命令成功后,會(huì)在Blog\source_post路徑下生成一個(gè)新的文件,用編輯器打開這個(gè)文件進(jìn)行Markdown語(yǔ)法的編輯就可以了。

寫完文章后,你可以使用 hexo g生成靜態(tài)文件。 hexo s在本地預(yù)覽效果。hexo d同步到github,然后使用http://username.github.io進(jìn)行訪問(wèn)。

注:每篇文章都是全文顯示的,文章過(guò)長(zhǎng)不方便閱讀,可以在編輯文章時(shí),使用< !-- more -->將文章摘要分割出來(lái)(把<和!之間的空格去掉,這里方便顯示出來(lái)才添加了空格),文章中有< !-- more -->就會(huì)只顯示< !-- more -->之前的摘要部分,并且顯示【閱讀全文】按鈕。

3.需要注意的幾個(gè)坑

1.ERROR Deployer not found : github
需要在Bash或Shell執(zhí)行以下語(yǔ)句

npm install hexo-deployer-git --save

2.Hexo的配置文件中任何冒號(hào)后面都必須是帶一個(gè)空格的
3.hexo clean
清除緩存文件db.json和已生成的靜態(tài)文件public。
在某些情況(尤其是更換主題后),如果發(fā)現(xiàn)您對(duì)站點(diǎn)的更改無(wú)論如何也不生效,您可能需要運(yùn)行該命令。

hexo clean

4.創(chuàng)建倉(cāng)庫(kù)的命名
一定要按照上文所提到的格式,且必須使用用戶名。
5.文件夾路徑中有中文
這個(gè)不用多說(shuō)了,路徑中有中文總是會(huì)出現(xiàn)一些亂七八糟的錯(cuò)誤。

4.總結(jié)一下常用的Hexo指令

hexo g #完整命令為hexo generate,用于生成靜態(tài)文件
hexo s #完整命令為hexo server,用于啟動(dòng)服務(wù)器,主要用來(lái)本地預(yù)覽
hexo d #完整命令為hexo deploy,用于將本地文件發(fā)布到github上
hexo n #完整命令為hexo new,用于新建一篇文章

5.關(guān)于域名綁定和主題切換

[Hexo個(gè)人博客]域名綁定 簡(jiǎn)明教程(小白篇)
[Hexo個(gè)人博客] 簡(jiǎn)述主題切換及其注意事項(xiàng)

6.參考

使用Hexo搭建個(gè)人博客(基于hexo3.0)
獻(xiàn)給寫作者的 Markdown 新手指南
廖雪峰的Git教程

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容