為什么要搭建博客,寫博客呢旧噪?
先簡單說一下吨娜,首先不管你是不是做開發(fā)的,自己動手來搭建一個博客舌菜,這本來就是一件很酷的事情萌壳,在程序員的世界里都很酷,更別說其他行業(yè)的了日月,本篇教程在發(fā)至公眾號前做了很多整理優(yōu)化袱瓮。
自己搭建的才是真正屬于自己的東西,我的底盤我做主爱咬,不用受限于各種約束尺借。在學(xué)習(xí)成長的路上,記錄下來精拟,真的很有意義燎斩,記錄不僅會大幅度提高你的寫作水平虱歪,還會間接提高你的語言表達(dá)能力,還可以幫助他人栅表,就比如有一天我 Google 搜有關(guān)的材料笋鄙,我自己寫的博客竟然出來了,當(dāng)然現(xiàn)在有了點擊率怪瓶,我的這些文章都可以在百度萧落,Google 上輸入關(guān)鍵字搜索到。
現(xiàn)附上搭建成功的洗贰,堪稱簡潔優(yōu)雅的博客效果找岖!
網(wǎng)上關(guān)于搭建博客教程的數(shù)不勝數(shù) , 那為什么我還要重復(fù)「造輪子」呢!
Google 和百度上的種種教程 , 我簡直是無力吐槽 敛滋。對于有從業(yè)經(jīng)驗的朋友們來說這些教程足矣 , 因為我們有一定解決問題和克服難題的能力 , 解決的大部分問題都源于我們的經(jīng)驗许布。
所以這篇教程僅對于新手做一個正確引導(dǎo) , 簡單粗暴 , 淺顯易懂。初心 - 為的是讓新入門的兄弟看到一個不會被誤導(dǎo)的良心教程绎晃。
開始搭建 , 請細(xì)心做好每步
安裝Node.js
關(guān)于軟件的安裝我真的是一句廢話都不愿意說 , 你一路點擊 next 就 ok 了 , 以下不再解釋蜜唾。
windows 32 位安裝包下載地址
windows 64 位安裝包下載地址
官網(wǎng)下載地址 各種系統(tǒng)以及版本都可以找到
安裝Git
Git 下載地址
安裝 Git 后打開 git bash 界面 , 也就是 git 命令窗口 , 以下的所有命令操作全部在此窗口進(jìn)行 , 別一會兒 cmd 一會兒 git。
注冊GitHub
關(guān)于賬號的注冊簡直不宜多說 , 只要你注冊過微信 qq
自行登錄GitHub官方網(wǎng)站注冊賬號 (https://github.com)
點擊 Sign up 注冊
檢查 SSH key 設(shè)置
首先我們需要檢查你本機(jī)的ssh key 秘鑰
$ cd ~/. ssh
如果提示:No such file or directory 說明你是第一次使用git箕昭。
生成新的 SSH key
注意1: 此處的郵箱地址灵妨,你要輸入自己的郵箱地址
注意2: 此處的「-C」的是大寫的「C」
$ ssh-keygen -t rsa -C "郵件地址@youremail.com"
-- 接著會出來以下提示
Generating public/private rsa key pair.Enter file in which to save the key (/Users/your_user_directory/.ssh/id_rsa):<回車就好>
然后系統(tǒng)會要你輸入密碼:
-- 注意:輸入密碼的時候沒有*字樣的 , 也就是你輸入了而命令行窗口上什么都沒有,直接輸落竹,不用管泌霍。
Enter passphrase (empty for no passphrase):<輸入加密串>Enter same passphrase again:<再次輸入加密串>
在回車中會提示你輸入一個密碼 , 這個密碼會在你提交項目時使用 , 如果為空的話提交項目時則不用輸入。這個設(shè)置是防止別人往你的項目里提交內(nèi)容述召。
最后如果沒有異常信息出現(xiàn) , 就成功設(shè)置ssh key了
添加 SSH key 到 GitHub
打開本地C:\Documents and Settings\Administrator.ssh\id_rsa.pub文件
此文件里面內(nèi)容為剛才生成人密鑰朱转。如果看不到這個文件,你需要設(shè)置顯示隱藏文件积暖。準(zhǔn)確的復(fù)制這個文件的內(nèi)容藤为,才能保證設(shè)置的成功。
登陸github系統(tǒng)夺刑。
點擊右上角頭像處的下拉列表 Settings--->SSH and GPG keys ---> 右上角 New SSH key
把你本地生成的密鑰復(fù)制到里面(key文本框中)缅疟, 點擊 add key 就ok了
測試
可以輸入下面的命令 , 看看設(shè)置是否成功,git@github.com的部分不要修改:
$ ssh -T git@github.com
如果是下面的反饋:
The authenticity of host 'github.com (207.97.227.239)'
can't be established.RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
Are you sure you want to continue connecting (yes/no)?
?```
不要緊張 , 輸入yes就好 , 然后會看到:
Hi cnfeat! You've successfully authenticated, but GitHub does not provide shell access.
####設(shè)置用戶信息
現(xiàn)在你已經(jīng)可以通過SSH鏈接到GitHub了 , 還有一些個人信息需要完善的遍愿。
Git會根據(jù)用戶的名字和郵箱來記錄提交存淫。GitHub也是用這些信息來做權(quán)限的處理 , 輸入下面的代碼進(jìn)行個人信息的設(shè)置 , 把名稱和郵箱替換成你自己的 , 名字必須是你的真名 , 而不是GitHub的昵稱。
$ git config --global user.name "userName"http://你的用戶名
$ git config --global user.email "userName@163.com"http://填寫自己的郵箱
-- 查看用戶名密碼去掉后面的雙引內(nèi)容
####SSH 配置成功
本機(jī)已成功連接到github
如有問題 , 請重新設(shè)置 , 常見錯誤參考
[http://help.github.com/articles/generating-ssh-keys](http://help.github.com/articles/generating-ssh-keys)
[http://help.github.com/articles/error-permission-denied-publickey](http://help.github.com/articles/error-permission-denied-publickey)
####使用GitHub 建立博客
登錄后系統(tǒng)沼填,在github首頁桅咆,點擊頁面右下角「New Repository」
填寫項目信息:
**Repository name:**userName.github.io 注意:userName為你的用戶名
**Description (optional):** --描述
注:Github Pages的Repository名字是特定(兩個要一致)的,比如我Github賬號是cnfeat坞笙,那么我Github Pages Repository(GitHub倉庫)名字就是cnfeat.github.io岩饼。
每個帳號只能有一個倉庫來存放個人主頁荚虚,而且倉庫的名字必須是username.github.io,這是特殊的命名約定籍茧。完了你可以通過[http://username.github.io]
(http://username.github.io/) 來訪問你的個人主頁版述。
點擊「Create Repository」 完成創(chuàng)建。
####安裝Hexo
Hexo的作者是[tommy351](https://github.com/tommy351/hexo)硕糊,根據(jù)[官方介紹](http://hexo.io/docs/index.html)院水,Hexo是一個簡單、快速简十、強大的博客發(fā)布工具,支持Markdown格式撬腾。
在「我的電腦」中任意選擇一個盤新建「Hexo」文件夾 , 比如我在 D 盤建的 , 打開 git 窗口輸入以下命令
打開 git , 運行Hexo 安裝命令
```?
$ npm install -g hexo
進(jìn)入到 Hexo 目錄下
? $ cd D:/Hexo
運行如下命令 , Hexo隨后會自動在目標(biāo)文件夾建立網(wǎng)站所需要的所有文件螟蝙。
$ hexo init
現(xiàn)在已經(jīng)搭建起來一個本地博客了 , 輸入以下命令驗證
$ hexo g
生成
$ hexo s
- 啟動服務(wù)本地預(yù)覽 (預(yù)覽完要停止鍵盤按下 Ctrl + C 停止本地預(yù)覽)
然后到瀏覽器輸入localhost:4000看看 , 一個初始博客映入眼簾
更換博客主題
注意:以下每更換一次主題 運行 hexo g 之前運行如下命令
$ hexo clean --因為主題換了 你需要clean以下老主題生成的緩存
運行了此命令之后再 hexo g(生成) 和 hexo s(啟動本地服務(wù)) 進(jìn)行預(yù)覽
復(fù)制主題
這里推薦我的主題 , 先搭起來 , 可根據(jù)你的喜好另行設(shè)置,我是挺喜歡這個主題的民傻,夠簡潔
$ git clone https://github.com/smartbeng/hexo-scribble
配置復(fù)制的主題
修改Hexo目錄下的config.yml配置文件中的theme屬性胰默,將其設(shè)置為jacman
啟用主題
從Hexo的根目錄進(jìn)入你復(fù)制的主題目錄
$ cd themes/hexo-scribble
$ git pull -- 推送
$ hexo g -- 生成
$ hexo s -- 啟動本地預(yù)覽
? 1.操作完之后瀏覽器輸入 localhost:4000 看一下有沒有
? 2.這里我說一點 , 調(diào)主題樣式后面再調(diào) , 先把博客搭建起來 , 別瞎搞
? 3.切記如果沒有 hexo clean 一下 , 再去 hexo g 和 hexo s
? 4.注意:為避免出錯,請先備份你的_config.yml 文件后再升級
這里有必要提下Hexo常用的幾個命令:
hexo generate (hexo g) 生成靜態(tài)文件漓踢,會在當(dāng)前目錄下生成一個新的叫做public的文件夾
hexo server (hexo s) 啟動本地web服務(wù)牵署,用于博客的預(yù)覽
hexo deploy (hexo d) 部署播客到遠(yuǎn)端(比如github, heroku等平臺)
另外還有其他幾個常用命令:
$ hexo new "postName" #新建文章
$ hexo new page "pageName" #新建頁面
postName 是你自己起的文章名字 , 內(nèi)容就在這里面寫
注意:重點來了
生成的文章會存在于 Hexo\source_posts 目錄下
文章默認(rèn)是一個.md的格式 , 意思它用的是 Markdown 語法 , 不知道的百度 , 關(guān)于語法的問題不知道的完了學(xué) , 先下載一個 Markdown編輯器
Markdown 編輯器我喜歡用 Typora , 自行搜索下載
如果不知道Markdown 的 語法寫作 , 先隨便在上面寫點東西為了測試,之后再學(xué)習(xí)喧半,就幾個標(biāo)記奴迅,很簡單
寫完之后 Ctrl + S 保存
那怎么在本地預(yù)覽自己寫的博客或者增加后的博客呢
首先在命令窗口切換回 Hexo 目錄下 , 而不是你復(fù)制的主題目錄下
$ cd Hexo
然后再 hexo g(生成網(wǎng)頁) 接著hexo s(啟動本地服務(wù)) , 瀏覽器查看效果( localhost:4000 )
常用簡寫
$ hexo n == hexo new --新建文章
$ hexo g == hexo generate --生成頁面
$ hexo s == hexo server --啟用本地瀏覽器預(yù)覽(localhost:4000)
$ hexo d == hexo deploy --部署博客```
常用組合
$ hexo d -g #生成部署$ hexo s -g #生成預(yù)覽
重頭戲 , 將你復(fù)制的主題以及所寫文章成功關(guān)聯(lián)到 GitHub 鏈接 , 就可以通過 username.github.io 訪問啦
? 在這里教大家一個快捷方式 , **一鍵部署**博客到 GitHub
進(jìn)入 Hexo 的根目錄 接著操作以下命令
$ cd Hexo
######注意 1:現(xiàn)在我們需要clone我們自己的GitHub倉庫了
######注意 2:切記下面是**你自己的倉庫名** , 把名字都改過來 , 下面我用的是我的倉庫名字
$ git clone https://github.com/storm/
strom.github.io.git .deploy/storm.github.io```
翻譯下這條命令的意思
1.將我們之前創(chuàng)建的GitHub 倉庫克隆到本地 , 命令會新建一個目錄叫做.deploy用于存放克隆的代碼。
2.然后會在.deploy文件夾下生成一個 你的名字.github.io 的文件夾用于存放文件
3.接著在 Hexo 根目錄下創(chuàng)建一個 .txt 文件 , 把下面的命令復(fù)制進(jìn)去
4.注意 :你的GitHub名字是什么就把你的名字全部改到下面 , 細(xì)心點
hexo generate
cp -R public/* .deploy/jacman.github.io
cd .deploy/jacman.github.io
git add .
git commit -m “update”
git push origin master```
4.將這個 ***.txt 文件的后綴改成 .sh*** , 它就變成了腳本文件 , 我們就將文件改成 ***deploy.sh*** 吧挺据!意思就是部署
5.從此以后需要部署本地博客到 GitHub , 直接可以雙擊這個文件 , 他會彈出提示 , 需要輸入 GitHub 的用戶名跟密碼 , 是不是很高大上
####見證奇跡的時刻
你的主題改完還沒有推送到GitHub , 所以你需要在 git 命令窗口先進(jìn)入主題目錄 Hexo/themes/jacman , 運行如下命令
$ cd themes/jacman$ git pull $ hexo g --生成本地(主題)
切記這里不要用 hexo d 命令 , 好了 , 往下看
現(xiàn)在切回到Hexo的根目錄下 , 我的在 D 盤 , 我就輸入以下命
$ cd D:/Hexo
如果你想改博客內(nèi)容 , 隨時都可以 , 進(jìn)入 D:\Hexo\source_posts 目錄下 , 右鍵你所創(chuàng)建的文件用Markdown編輯器打開 , 編輯完 Ctrl + S 保存關(guān)掉窗口就行了 , 緊接著往下走就OK
接著輸入下面的生成命令
$ hexo g
**最后一步 , 發(fā)布博客**(發(fā)布之后訪問會有延遲 , 別著急)
雙擊我們剛在Hexo 目錄下編輯的 deploy.sh 腳本文件 , 然后默默的輸入 GitHub 用戶名和密碼 , 完了之后就去訪問你的個人博客網(wǎng)頁吧取具!就是你的 GitHub 倉庫名 [https://username.github.io](https://username.github.io) (username 是你的用戶名呀哥 , 別搞錯)
也就是說:以后你發(fā)布博客只需要兩步 , Hexo 根目錄下 運行 hexo g , 之后點擊 depploy.sh 腳本!
**以后如果你第二次**修改了新的主題 , 在修改完 Hexo 下的 _config.yml 之后請進(jìn)行以下操作
$ cd Hexo/themes/jacman -- 當(dāng)然是先進(jìn)入主題的目錄了
$ hexo clean --然后clean一下老主題
$ git pull
$ hexo g -- 生成
此時再進(jìn)入 Hexo 的根目錄下
$ hexo g```
然后直接雙擊 Hexo 下的 deploy.sh 腳本吧扁耐!等著輸入用戶名密碼就OK
如果不出意外暇检,你會看到一個跟我博客一樣主題的你的專屬博客映入你的眼簾,這句話有點長婉称,哈哈
請注意這里有個大坑
_confing.yml 下 timezone 配置不能錯
timezone: zh-CN #能配置成 +08:00 類似的
上面那個也有不對的块仆,如果設(shè)置cheng +08:00 后 momentjs解析會報異常
需要將timezone配置成 時區(qū)名稱
timezone: Asia/Shanghai
關(guān)于域名的綁定看我解釋 , 不需要域名的 , 比如我的用戶名是 smartbeng , 就可以通過 (https://smartbeng.github.io) 來訪問我的博客了。綁定自己的域名買域名都是后話了 , 等你富裕了可以完全買一個綁定在這里 , 比如我去買一個 www.smart.com , 完了綁定在GitHub , 以后就可以訪問這個鏈接來到我的博客了 , 綁定很簡單 , 自行網(wǎng)上搜索王暗。為了不對新手造成誤導(dǎo) , 就把這個省略了 , 因為有人問我是不是一定要綁定域名 , 可見某些教程誤導(dǎo)了新上手的同學(xué)悔据。
基于Hexo 的我的博客主題地址 https://github.com/smartbeng/hexo-scribble
歡迎 Fork , 歡迎 Pull requests , 感覺這個教程有幫助的起碼別忘了給我的 GitHub Star 哈 , 感謝!祝愿大家在這條路上越走越遠(yuǎn) , 不斷突破自己 , 讓自己變得更加出眾瘫筐!
最后說兩句 , 關(guān)于本主題的配置百度一搜就有 , 比如我們用的jacman的主題 , 你就搜jacman 的主題配置, 關(guān)于樣式的調(diào)整 , 如果你是一個追求完美的人 , 那你就要在這上面用點心思了 , 比如說調(diào) CSS 樣式什么的 , 哈哈你懂得蜜暑!如果感覺本教程不錯歡迎大伙兒推薦給沒搭建的朋友們來踩 , 感謝!