最初是在實驗室里建立了自己的博客潮改,然后有時候回到寢室里想提交博客狭郑,于是在網上搜了很多帖子總結出這個方法。
主要的思路是 利用git分支實現
hexo生成的靜態(tài)博客文件默認放在master分支上汇在。
hexo的源文件(部署環(huán)境文件)可以都放在hexo分支上(可以新創(chuàng)建一個hexo分支)翰萨,換新電腦時,直接git clone hexo分支
(git@github.com:Michaeljian/Michaeljian.github.io.git)即可趾疚。
一缨历、hexo搭建博客原理
hexo博客的部署環(huán)境目錄:
hexo博客的目錄結構解析:
上傳到github上的文件:
1.hexo幫助把博客發(fā)送到github,同時把md文件轉換成網頁文件糙麦。
2.hexo目錄下的文件和github上的文件是不同的辛孵,public文件夾的文件通過hexo d 上傳到github去了,其他的文件則留在本地目錄下赡磅。
二魄缚、實驗室PC上的操作
1.準備工作
首先確保自己已經使用hexo在github搭建好了自己的個人博客,github倉庫中如下圖顯示:
2.對username.github.io倉庫新建hexo分支,并克隆
在Github的username.github.io倉庫上新建一個xxx分支冶匹,并切換到該分支习劫,并在該倉庫->Settings->Branches->Default branch中將默認分支設為xxx,save保存嚼隘;然后將該倉庫克隆到本地诽里,進入該username.github.io文件目錄。
完成上面步驟后飞蛹,在當前目錄使用Git Bash執(zhí)行
git branch
命令查看當前所在分支谤狡,應為新建的分支xxx:
$ git branch
*hexo
3.將本地博客的部署文件拷貝進username.github.io文件目錄
如題,先將本地博客的部署文件(Hexo目錄下的全部文件)全部拷貝進username.github.io文件目錄中去卧檐。
接下來墓懂,進入username.github.io文件目錄下,將該目錄下的全部文件提交到xxx分支霉囚,提交之前需注意:
- 將themes目錄以內中的主題的.git目錄刪除(如果有)捕仔,因為一個git倉庫中不能包含另一個git倉庫,提交主題文件夾會失敗盈罐。
- 可能有人會問榜跌,刪除了themes目錄中的.git不就不能
git pull
更新主題了嗎,很簡單暖呕,需要更新主題時在另一個地方git clone
下來該主題的最新版本斜做,然后將內容拷到當前主題目錄即可
4.提交hexo分支
執(zhí)行git add .
、git commit -m 'back up hexo files'
(引號內容可改)湾揽、git push
即可將博客的hexo部署環(huán)境提交到GitHub個人倉庫的xxx分支瓤逼。
現在可以在GitHub上的username.github.io倉庫看到兩個分支的差異了。
master分支和xxx分支各自保存著一個版本库物,master分支用于保存博客靜態(tài)資源霸旗,提供博客頁面供人訪問;xxx分支用于備份博客部署文件戚揭,供自己維護更新诱告,兩者在一個GitHub倉庫內互不沖突,完美民晒!
三精居、宿舍自己的電腦
至此,你的博客已經可以在其他電腦上進行同步的維護和更新了潜必,方法很簡單:
- 將新電腦的生成的ssh key添加到GitHub賬戶上
- 在新電腦上克隆username.github.io倉庫的xxx分支到本地靴姿,此時本地git倉庫處于xxx分支
- 切換到username.github.io目錄,執(zhí)行
npm install
(由于倉庫有一個.gitignore文件磁滚,里面默認是忽略掉 node_modules文件夾的佛吓,也就是說倉庫的hexo分支并沒有存儲該目錄[也不需要]宵晚,所以需要install下)
到這里了就可以開始在自己的電腦上寫博客了!
- 編輯维雇、撰寫文章或其他博客更新改動
- 依次執(zhí)行
git add .
淤刃、git commit -m 'back up hexo files'
(引號內容可改)、git push
指令吱型,保證xxx分支版本最新- 執(zhí)行
hexo d -g
指令(在此之前逸贾,有時可能需要執(zhí)行hexo clean
),完成后就會發(fā)現津滞,最新改動已經更新到master分支了耕陷,兩個分支互不干擾!
四据沈、回到實驗室PC更新并提交博客
** 注意: 每次換電腦進行博客更新時,不管上次在其他電腦有沒有更新饺蔑,最好先
git pull
**
按照之前的方法寫自己博客锌介,
然后將目錄切換下username.github.io下,此時需要安裝一下npm install
猾警,
最后執(zhí)行hexo g
孔祸、hexo s
、hexo d
等命令即可提交成功
參考資料:
Erick
[theqwang'blog]