如何在mac和Windows上同時寫hexo部落格?
首先,我是在公司上的windows機器上部署了hexo,但是回家後發現很不方便,家裡的電腦是mac機。所以根據網上的經驗我總結了一下如何在mac和Windows上同時寫hexo部落格。
Windows機器
在github上新建遠端倉庫
將原來的page專案刪除,新建一個和原來名字一樣的空專案。不用初始README.md
此時只有一個空的master分支。
本地初始化一個Hexo專案
注意:本地的目錄不要動
重新新建一個空目錄,作為你的部落格目錄。進入該目錄,右擊Git bash here,初始化一個Hexo專案:
hexo init npm install npm install hexo-deployer-git --save
然後用自己原來部落格裡的檔案替換掉這裡的source\
, scaffolds\
, themes\
,_config.yml
替換成自己原來部落格裡的。注意,這裡把themes/next
中的.git/
目錄刪除
將整個目錄推送到master
要推送到master分支,首先要將該目錄初始化為本地Git倉庫:
1 2 3 4 5 6 7 |
git init //把部落格目錄下所有檔案推送到master分支 git remote add origin [email protected]:chown-jane-y/chown-jane-y.github.io.git git add . git commit -m "first add hexo source code" git push origin master |
注意:如果不小心初始化了README.md 在執行 git push origin master 會失敗.。此時先執行以下命令進行程式碼合併
git push origin master
在github上新建一個分支
1.建立本地分支 git branch 分支名,例如:git branch hexo 2.切換本地分支 git checkout 分支名,例如從master切換到分支:git checkout hexo 3.遠端分支就是本地分支push到伺服器上。比如master就是一個最典型的遠端分支(預設)。 git push origin hexo 4.設定預設分支 git branch --set-upstream-to=origin/hexo hexo
新建一個分支hexo(名字可以自定義),這時候hexo分支和master分支的內容一樣,都是hexo的原始檔。
並把hexo設為預設分支,這樣的話在另外一臺機器上克隆下來就直接進入hexo分支,並且以後所有操作都是在hexo分支下完成。
為什麼需要這個額外的分支呢?
因為hexo d只把靜態網頁檔案部署到master分支上,所以你換了另外一臺電腦,就無法pull下來繼續寫部落格了。有了hexo分支的話,就可以把hexo分支中的原始檔(配置檔案、主題樣式等)pull下來,再hexo g的話就可以生成一模一樣的靜態檔案了
部署部落格
還是和以前一樣:
1. hexo g -d
如果提示 RROR Deployer not found: git 說明前面 npm install --save hexo-deployer-git 沒有執行成功 再執行一次
npm install --save hexo-deployer-git
部落格已經成功部署到master分支,這時候到github檢視兩個分支的內容,hexo分支裡是原始檔,master裡是靜態檔案
注意:根目錄下的_config.yml配置檔案中branch一定要填master,否則hexo d就會部署到hexo分支下。
關聯到遠端hexo分支
如果有修改的話 ,在本地新建一個hexo分支別忘了,要推送到hexo分支上去:
git add .
git commit -m ""
git push origin hexo
這樣才能在另外的機器上pull下來,保持同步
MAC機器
個人PC上的工作已經完成了,下面講一下如果你換到了另外一臺電腦上,應該如何操作。
將部落格專案克隆下來
git clone xxx
克隆下來的倉庫可能是master分支(我已經設定hexo為預設分支了 但是clone下來還是master分支)這時候需要切換一下分支,所以可以在這基礎上繼續寫部落格了。
#檢視所有分支
git branch -a
#切換分支
git checkout hexo
但是由於.gitignore
檔案中過濾了node_modules\
,所以克隆下來的目錄裡沒有node_modules\
,這是hexo所需要的元件,所以要在該目錄中重新安裝hexo,但不需要hexo init。
npm install hexo
npm install
npm install hexo-deployer-git --save
新建一篇文章測試
hexo g -d
推送到hexo分支
git add .
git commit -m "add work PC test"
git push origin hexo
部署到master分支
hexo g -d
日常操作
如果上面的過程都操作無誤的話,你就可以在任何能聯網的電腦上寫部落格啦。一般寫部落格的流程是下面這樣。
寫部落格前
不管你本地的倉庫是否是最新的,都先pull一下,以防萬一:
git pull origin hexo
把最新的pull下來,再開始撰寫新的部落格。
寫部落格
hexo new "title"
然後開啟source/_posts/title.md,撰寫博文。
寫完部落格
先推送到hexo分支上:
git add .
git commit -m "add article xxx"
git push origin hexo
最後部署到master分支上
hexo g -d
整個流程大概就是這樣。