一、簡介
Hexo
Hexo是一個開源的靜態(tài)博客框架,基于node.js開發(fā),作者是臺灣大學(xué)生tommy351。
Github
如果是程序員肯定知道,Github是開源代碼庫以及版本控制系統(tǒng)。在GitHub,用戶可以十分輕易地找到海量的開源代碼。
Github Pages
Github Pages可以理解為用戶編寫的、托管在github上的靜態(tài)網(wǎng)頁,你只需將你的改動提交到Github,就可以實現(xiàn)更改你的網(wǎng)頁。
二、基礎(chǔ)環(huán)境配置
安裝Node
從Node.js官網(wǎng)下載對應(yīng)的版本安裝即可。
安裝Git
從Git官網(wǎng)下載對應(yīng)版本安裝即可。
安裝Hexo
Node和Git都安裝完畢后,在任意路徑下新建一個文件夾(隨意命名),如Hexo,作為你的博客專屬路徑,用于存放Hexo相關(guān)配置信息,之后終端進(jìn)入到此路徑并分別執(zhí)行如下命令來安裝和初始化Hexo
sudo npm install-g hexo
hexo init
至此,可以使用Hexo了,我們來實驗一下。
分別執(zhí)行如下命令來生成一個靜態(tài)網(wǎng)頁并啟動本地服務(wù)來預(yù)覽你的初始博客,
hexo generate
hexo server
或者簡寫
hexo g
hexo s
初始化后文件結(jié)構(gòu)如圖:
如圖,啟動本地服務(wù)后,即可在瀏覽器輸入http://localhost:4000 來預(yù)覽博客啦!
三、配置GitHub
首先你得有個Github帳號,到https://github.com 上注冊個帳號,至于如何注冊,相信你會的。
綁定Git & Github
//Github用戶名
git config --global user.name "ConnorLin"
//注冊Github的郵箱
git config --global user.email "your_email@example.com"
創(chuàng)建博客倉庫
注冊帳號后,點?來創(chuàng)建一個repository,該倉庫必須以 "your_user_name.github.io" 的格式命名
配置SSH Key
首先查看本地是否已經(jīng)有SSH Key, 終端輸入如下命令:
cd ~/.ssh;ls
如果存在id_ras.pub,說明已經(jīng)有SSH Key,否則需要重新創(chuàng)建。
使用如下命令生成密鑰
ssh-keygen -t rsa -C "your_email@example.com"
按提示分別輸入Key文件保存路徑和密碼(可以為空),完成會有如下提示即表示創(chuàng)建成功
The key fingerprint is:
01:0a:f6:3c:ca:95:d6:17:a1:7d:f0:65:9d:f0:a2:db your_email@example.com
將SSH Key添加到ssh-agent:
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_rsa
添加SSH Key到Github賬戶
1、復(fù)制ssh key內(nèi)容
pbcopy < ~/.ssh/id_rsa.pub
2、點擊Github賬戶頭像,點擊設(shè)置進(jìn)入Github設(shè)置
3、點擊左邊的SSH and GPG Keys
4、添加SSH Key, 填寫剛剛復(fù)制的密鑰內(nèi)容
測試SSH連接
ssh -T git@github.com
如果有如下提示:
The authenticity of host 'github.com (192.30.252.1)' can't be established.
RSA key fingerprint is nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.
Are you sure you want to continue connecting (yes/no)?
輸入yes即可
Hi username! You've successfully authenticated, but GitHub does not provide shell access.
四、關(guān)聯(lián)Hexo 和 Github
配置Hexo
進(jìn)入博客根路徑,打開_config.yml,拉到最后,修改如下:
//注意冒號后面有空格
deploy:
type: git
repository: git@github.com:ConnorLin/Connorlin.github.io.git
branch: master
安裝Hexo git插件
npm install hexo-deployer-git --save
將博客部署到Github
hexo deploy
至此,在瀏覽器輸入博客地址 http://connorlin.github.io 就可以訪問博客啦!
五、Hexo常用命令
1、新建文章
hexo new [template] "Title" //新建標(biāo)題為Title的文章
其中template是可選參數(shù),我稱之為文章模板,默認(rèn)值為post。scaffolds路徑下的文件就是模板文件,你可以新建或編輯現(xiàn)有模板。
執(zhí)行命令后,在source/_posts/下會生成Title.md文件,當(dāng)然,也可以手動創(chuàng)建后綴為“.md”的文件,并用喜歡的markdown編輯器編輯。
本文使用作業(yè)部落的Cmd MarkDown編寫的。
2、新建頁面
heox new page "Page Title" //新建頁面
3、生成靜態(tài)頁面至public目錄
hexo generate //生成靜態(tài)頁面
4、本地預(yù)覽
hexo server //啟動本地服務(wù),Ctrl+C關(guān)閉
5、部署到Github
hexo deploy //將博客部署到Github
6、清理已經(jīng)生成的靜態(tài)文件
hexo clean
六、美化
美化自然離不開主題,Hexo主題花樣繁多,可以在Hexo_Themes找到你中意的主題。
試過幾種主題,個人比較中意Yilia和Next這兩款主題,本文主題使用的是Next。
Next有官方教程,講解非常詳細(xì),包括添加評論、搜索等一應(yīng)俱全,此處不再贅述。
至于如何應(yīng)用主題,步驟大同小異,此處以next為例:
//進(jìn)入博客根目錄
$ cd your-hexo-site
//從Github上克隆主題到你博客theme里
$ git clone https://github.com/iissnan/hexo-theme-next themes/next
然后打開根目錄下的_config.yml文件,將theme的值改為主題名字:
theme: next
配置完畢,此時可以啟動本地服務(wù)http://0.0.0.0:4000/ 來預(yù)覽主題了。
七、寫作
Markdown
寫博客當(dāng)然用Markdown,目前mardkdown工具有很多,找到適合自己的還是要花點時間的,參考好用的Markdown編輯器一覽找到你中意的吧。
作為一名程序猿,當(dāng)然選擇Sublime Text來裝bility啦!
1、安裝Package Control插件
詳見官方教程
2、打開Package Control
按快捷鍵 Shift + command(Ctrl) + P -> 輸入install -> 選擇Install Package
稍等一會(左下角進(jìn)度),就可以安裝你想要的插件啦!
3、安裝插件
輸入插件名,回車即可安裝,插件請參考Sublime插件:Markdown篇。
4、開始用Sublime Text寫博客吧~
圖床
開始寫博客才知道圖床,為了博客穩(wěn)定,需要選擇一個可靠且免費的圖床,推薦七牛,有10G免費空間,僅做圖床足矣。但是七牛現(xiàn)在注冊需要實名,這點比較令人糾結(jié)。
所以我更推薦以強大的Github為免費圖床,雖然麻煩點,但穩(wěn)定安心?。?!
1、添加博客圖片專用Repository,如BlogImages,這樣有利于維護(hù);
2、發(fā)布博客前,將博客中用到的圖片push到BlogImages;
3、從Github里獲取圖片地址,如何獲取我想你會的;
4、將地址中的blob替換為raw,必須替換,否則無法顯示圖片
如
“https://github.com/ConnorLin/BlogImages/blob/master/2016:04:02/hexo_server.png”
改為
“https://github.com/ConnorLin/BlogImages/raw/master/2016:04:02/hexo_server.png”
5、將修改后的地址用于博客即可,大功告成!
至此,博客基礎(chǔ)框架搭建完畢,Enjoy it!
參考資料
1、hexo你的博客
2、HEXO+Github,搭建屬于自己的博客
3、Github Help
4、小白獨立搭建博客--Github Pages和Hexo簡明教程
5、Sublime插件:Markdown篇
6、遷移博客圖片者的福音:使用GitHub做免費不限流量圖床