前言
這是我開(kāi)始使用macbook air后的第一篇博客蝙寨,內(nèi)容也是在mac os下搭建hexo+github博客的教程
環(huán)境:mac os x 10.11.6
安裝環(huán)境配置
- 安裝xcode(hexo官網(wǎng)說(shuō)明要安裝command line tools,不過(guò)現(xiàn)在的xcode似乎自帶了可以不用另外安裝)痊剖,前往app store下載安裝(8.2.1版本安裝包有5g左右)
- 安裝git,使用homebrew安裝
- 安裝node.js蚪缀,直接去官網(wǎng)下載安裝包比較快也省事node.js
安裝hexo
- 終端執(zhí)行如下命令
sudo npm install -g hexo
- 初始化疹启,終端cd到一個(gè)指定的目錄(我在~/Documents/目錄下)執(zhí)行如下命令
hexo init <folder>
- 終端cd到<folder>目錄下,安裝npm
npm install
- 此時(shí)開(kāi)啟hexo服務(wù)就可以在本地(本地預(yù)覽地址http://localhost:4000 )預(yù)覽博客主頁(yè)了
hexo s
(但是似乎這次我安裝時(shí)默認(rèn)themes文件夾是空的所以終端會(huì)提示缺少layout煎殷,瀏覽器顯示空白頁(yè)屯伞,不過(guò)從別的地方下一個(gè)theme的主題放進(jìn)去就可以看到了)
關(guān)聯(lián)已有的github
之前我已經(jīng)有了自己的github帳號(hào)并且有專(zhuān)門(mén)存放博客的repository,這次就是關(guān)聯(lián)一下豪直,然后上傳ssh密鑰
- 在finder中打開(kāi)hexo創(chuàng)建文件夾下的_config.yml配置文件劣摇,拉到最底下修改成這樣
deploy:
type: git
repository: https://github.com/mancunian100/mancunian100.github.io.git
branch: master
(注意所有的:后面要加上一個(gè)空格,否則hexo命令會(huì)報(bào)錯(cuò))
- 在hexo文件夾目錄下執(zhí)行
hexo g
如果報(bào)錯(cuò)弓乙,則執(zhí)行
npm install hexo --save
- 再執(zhí)行命令
hexo d
如果報(bào)錯(cuò)末融,則執(zhí)行
npm install hexo-deployer-git --save
然后再執(zhí)行hexo g和hexo d
- 此時(shí)終端會(huì)提示輸入github的用戶名和密碼,輸入完成后就已經(jīng)成功鏈接了github上的repository唆貌,這時(shí)瀏覽器輸入mancunian100.github.io就可以看到博客頁(yè)面了
添加ssh key到github
- 檢查ssh keys是否存在
ls -al ~/.ssh
如果存在可以跳過(guò)下一步
- 生成新的ssh key
ssh-keygen -t rsa -C "your_email"
默認(rèn)會(huì)在相應(yīng)路徑下(~/.ssh/id_rsa.pub)生成id_rsa和id_rsa.pub兩個(gè)文件滑潘,其中id_rsa是私鑰,id_rsa.pub是公鑰锨咙,私鑰不要公開(kāi)或者上傳语卤,公鑰可以上傳至github進(jìn)行驗(yàn)證
- 將ssh key添加至github
由于/.ssh文件夾默認(rèn)不會(huì)在finder中顯示,可以在終端中用vim打開(kāi)并復(fù)制,然后進(jìn)入github ->settings ->ssh and gpg keys ->new ssh key粹舵,將復(fù)制的公鑰粘貼至key下面钮孵,上面的title可以隨便寫(xiě),我這次寫(xiě)的是關(guān)于macbook air的眼滤,最后點(diǎn)擊add ssh key就完成了
完成
至此在mac上部署hexo的工作已經(jīng)完成巴席,可以像以前一樣使用hexo new “post”命令寫(xiě)博客,hexo clean清除緩存文件诅需,hexo g生成新的文件漾唉,hexo d同步部署到github端
注意
由于這種部署方法相當(dāng)于重新搭建一個(gè)新的博客,在關(guān)聯(lián)github后以前那些文章的md文件都會(huì)在repository清空堰塌,所以事先需要把repo里的文章下載備份一下赵刑,目前還沒(méi)有去探索一種可以直接無(wú)縫接管的方法