如何將Hexo Blog同時釋出到GitHub跟Coding上
前言
上一篇文章已經講過怎樣使用Hexo建立部落格以及怎樣將Hexo部落格釋出到GitHub上.如果對Hexo建立部落格還不熟悉請先看看之前的那篇文章我的Hexo部落格建站日誌.大家可能跟我一樣,建站的時候很輕鬆,但是等往github上提交的時候會等待很長時間,畢竟GitHub是國外的東西,很多地方會被牆掉,在我們現在不翻牆的情況下如何能將自己的部落格迅速的託管到免費平臺上呢?於是我想到了我比較喜歡儲存自己專案的Coding.net.一款國內的,強大的程式碼託管,專案演示平臺.平臺找到了,但又如何能不費勁一次就同時部署到Coding.net跟GitHub上呢?於是帶著這兩個問題,我查了很多資料,又經過一番折騰,終於實現了,一次部署同時釋出.
在Coding上建立一個專案
準備工作
首先打開個賬戶的個人設定中找到Global Key(個性字尾),然後新建一個Coding專案,專案名字跟Global Key相同.(大家也可以不這麼建,可以直接建立專案,但是最後生成的頁面會很長,顯得不美觀)
Tips:
- 最好建立跟Global Key相同的專案這樣訪問起來直接就是http://yourGlobalKey.coding.me. 比如說我的Coding的部落格CodingBlog,否則的話後面得加上專案名.
- 這裡建立的是公有專案,為什麼要建立公有專案,是因為如果專案弄成私有的,那麼你的專案的pages頁面就看不到裡面的js效果了,就是隻有文字的那種,主題什麼的都白設定了.
- 如果專案已經設定成私有專案了並且還想看到效果,那隻能用coding的演示功能了.只是coding功能是需要花費碼幣的,24小時0.01碼幣.
- 如果專案設定成公有的專案了,然後也部署成功了,在手機上開啟的時候建議使用騰訊核心外的瀏覽器,否則的話可能會被當成惡意網站遮蔽掉.在pc上任何瀏覽器開啟都是沒問題的.
配置CodingGit的SSH
如果是第一次使用CodingGit提交的話,建議先配置SSH公匙.Coding生成公匙的方法可以檢視配置CodingSSH公鑰.如果陌生可以按以下步驟來:
1. 打開個人中心的SSH公匙
2. 如果之前配置過GitHub的公匙的話直接開啟,.ssh資料夾裡面的_rsa.pub
比如我的是pvphero_rsa.pub,然後將裡面的內容全部複製,填寫到ssh_rsa公匙處,公匙的名稱可以隨便起,然後點選’新增’,再接著輸入密碼就可以完成添加了
3. 新增後測試一下
ssh -T [email protected]
如果出現下面的提示則表示公匙新增成功了:
Hello shenzhenwei You've connected to Coding.net by SSH successfully!
配置_config.yml的部署
準備工作都做好了,現在開始配置_config.yml,大家經過前面的文章我的Hexo部落格建站日誌相信對釋出到GitHub上並不陌生,釋出到GitHub上是在_config.yml檔案中的deploy加上了GitHub的專案地址,以及釋出的分支.那麼要想同時釋出到Coding上肯定是需要在配置檔案中加上Coding的專案地址的,但是應該怎麼加?格式又是如何呢?,根據Hexo官方文件只需要將deploy的格式更改成下面的就可以了
deploy:
type: git
repo:
github: <repository url>,[branch]
coding: <repository url>,[branch]
比如我的是這樣的:
deploy:
type: git
repo:
github: [email protected].com:pvphero/pvphero.github.io.git,master
coding: [email protected].coding.net:shenzhenwei/shenzhenwei.git,master
部署Hexo部落格
部署到GitHub跟Coding
- 前面的工作都做好了以後,生成靜態網頁
$ hexo g
- 本地檢視效果
$ hexo s
- 部署到git
$ sudo hexo d
之後我們可以看到Coding跟GitHub中專案有我們提交上來的程式碼
並且GitHub上已經可以看到釋出的內容Github Blog
設定Coding專案中的配置
在Coding上部署部落格有兩種方式,前面提到過,在做下說明.Coding上部署部落格總共有兩種:
1. 通過coding pages的方式進行部落格的部署.coding為每個專案都推出了pages,不管是公有的還是私有的都有pages功能.我也比較推薦這種方式去搭建Hexo Coding部落格.有很多好處,比如說免費,比如說可以繫結域名等等吧.
2. 通過Coding的演示功能進行Hexo Coding部落格的部署.這種方式是收費的,每天最少0.01碼幣,大家可以體驗體驗.但不推薦.
如果採用Pages方式的話就必須要在source/新建一個空白檔案,名字必須是Staticfile
cd source
touch Staticfile #名字必須是Staticfile
因為用過coding演示功能的小夥伴都可能會知道,如果演示的時候沒有Staticfile,coding的檢測會提示檢測不到,詢問你是否強制開啟.具體的原因的話,可能是coding是用靜態的方式部署的,檢測到這個的時候就知道你的專案是以靜態方式釋出的.
開啟coding專案的pages功能
在剛剛建的專案中開啟pages功能,這裡的部署分支選擇master,因為你在_config.yml中設定的分支是master,然後點選立即開啟.
這時候如果點選連結出現404的話,並且本地測試是沒有問題的,github上開啟的連結也是沒有問題的話,那麼久需要耐心的多等幾分鐘了,這個coding.net部署的稍微慢點.coding的部落格部署就ok了.這樣就可以提交一次同時部署了~~
演示方式部署
關於演示方式部署,我就不費口舌了,因為演示方式部署肯定支援靜態網頁的,不管你是私有專案還是公有專案都是可以看到的.如果實在想去進行網站部署,建議大家參看 嘟嘟MD
希望這篇文章對大家有所幫助~~我也是看了 嘟嘟MD 的部落格,然後跟著一步一步實現的~希望大家有問題多交流~