GitHub子模組
記錄GitHub子模組使用方法
使用的子模組是這個網站的Theme儲存庫
GitHub: https://github.com/kakawait/hugo-tranquilpeak-theme
儲存路徑: themes/hugo-tranquilpeak-theme
安裝GitHub子模組
git submodule add https://github.com/kakawait/hugo-tranquilpeak-theme.git themes/hugo-tranquilpeak-theme
安裝子模組後有兩項更改需要提交, 否則下次Clone項目後, 將無法直接Clone子模組
- .gitmodules
- themes/hugo-tranquilpeak-theme
列出已安裝的子模組
git submodule
Clone已安裝的子模組
重新Clone項目時, 子模組文件夾為空, 需要手動Clone子模組文件, 執行:
git submodule update --init
如果子模式又依賴了其他子模組, 則要執行:
git submodule foreach git submodule update
移除子模組
移除子模組的方法相對複雜, 並且很容易出錯, 先提供一個很low但安全的方法:
- 移除.gitmodules內相關行
- 刪除themes/hugo-tranquilpeak-theme
- 提交所有更改
- 刪除項目並重新Clone
正確方法:
- 執行
git submodule deinit themes/hugo-tranquilpeak-theme
- 移除.gitmodules內相關行
- 執行
git add .gitmodules
, 否則無法執行下一步 - 執行
git rm --cached themes/hugo-tranquilpeak-theme
- 刪除themes/hugo-tranquilpeak-theme
- 刪除.git/modules/themes/hugo-tranquilpeak-theme(如有)
- 提交所有更改