在其他電腦中操作設定好主題的 Hexo Blog

如何在其他電腦中操作 Hexo 的 Blog ?
這問題其實困擾滿久的,但是一直沒有花時間怎麼解決這個問題,剛好研究了一下其他 Hexo 開發者他們的 blog 發現了一些不太一樣的東西…

情境

魯蛇我在家裡電腦中配置好 Hexo 的主題是 next
但是 push 到 github 上後,放置主題的 themes 資料夾卻是空的,雖然看的到資料夾目錄,但是無法點進去,clone 專案下來後,資料夾也是空的狀態…
假如使用別台電腦 clone Blog 專案下來要發布文章之類的,但我根本不知道也早就忘記當初設定的 Theme 到底是甚麼了

當下的解決方式:

  1. 永遠只在家裡電腦發布文章 (低能)
  2. 在別處打完文章後(.md),再把文章 push 到專案中,回家再 deploy Web Site (白癡)
  3. Fork Theme 的專案到自己 github 中,每次都要 clone Blog 跟 Theme 的專案然後再處理發布 (麻煩)

已第一點來說哪一天電腦壞了怎麼辦?
所以稍微看了一下有在使用 Hexo 當作 Blog 的大大們,畢竟這種問題不是只有我會遇到

解決

  1. 首先把 Next 的專案 fork 一份下來,並且把你要的設定修改並且 push 到這個 fork 的版本當中。
  2. 在 Blog 的專案只要加一個 .gitmodules 的檔案並且在裡面設定以下

    1
    2
    3
    [submodule "themes/next"]
    path = themes/next
    url = git://github.com/Stoner609/hexo-theme-next.git
  3. 這時候只要到其他電腦 clone Blog 專案下來後,只需要輸入兩行 git 指令就會依照 .gitmodules 把子模塊下載下來了

    1
    2
    git submodule init
    git submodule update
  4. 但是可能會發現下載下來的子模塊跟自己 push 後的版本不一樣,看起來像是某一個臨時的狀態版本 (應該就是最早 Fork 的那個版本),這時候到那個 Next 的版本可以切換branch,在切換到 master 就可以看到最新版本了。

此文章會再修改並且放圖…

參考

子模塊
Git Submodule 用法筆記

0%