Hexo | (四)多机同步更新博客
Hexo博客存在一個問題:我們僅僅將博客的靜態頁面文件部署到了github遠程倉庫中,而我們的站點源文件仍在本地存儲。如果存儲站點源文件的電腦系統崩潰了,或者我們換了其他電腦,我們便無法實時更新博客了。
如果選擇重新搭建站點,不僅過程繁瑣,而且還需要大量時間安裝依賴、主題配置、博客優化,極其麻煩。所以我們需要將站點必要文件也部署到github遠程倉庫中。
我們采取的遠程倉庫部署策略是:一個倉庫兩個分支。倉庫即[yourname.github.io],一個分支[master]用于托管演示頁面,一個分支[backup]用于備份Hexo博客站點的必要文件。
多機同步更新的前提:backup分支
Hexo博客站點的必要文件:
.
├── scaffolds # 文章模板
├── source # 用戶源文件:頁面,文章markdown文件
├── themes # 主題
├── .gitignore # git忽略文件信息
├── _config.yml # 站點配置文件
├── package.json # 已安裝插件映射表,下次只需npm install即直接安裝表中的插件
├── package-lock.json
編輯站點根目錄下的.gitignore文件,使Git上傳時忽略不必要的文件:
.DS_Store
Thumbs.db
db.json
*.log
node_modules/
public/
.deploy*/
1.刪除themes你的主題中的.git,.github,.gitignore等git倉庫文件,只保留站點根目錄下的.gitignore。
2.在Hexo博客站點根目錄(即blog文件夾)中GitBash:
# 將blog作為一個git倉庫進行初始化
$ git init
# 創建/切換hexo分支
$ git checkout -b backup
# 將文件添加到暫存區
$ git add .
# 將暫存區文件提交到本地倉庫
$ git commit -m "提交說明"
# 添加遠程倉庫
$ git remote add origin https://github.com/yourname/yourname.github.io.git
# 將本地倉庫推送至遠程倉庫
$ git push origin backup
多機同步更新博客
1.安裝前提
(1) 安裝Git
(2) 安裝nodejs
2.博客還原
# 克隆hexo分支到本地
$ git clone -b backup https://github.com/yourname/yourname.github.io.git
# 進入yourname.github.io文件夾
$ cd yourname.github.io
# 安裝hexo
$ npm install hexo --save
# 安裝hexo命令行模式
$ npm install hexo-cli -g
# 安裝所有依賴,根據package.json自動安裝之前安裝過的插件
$ npm install
3.配置網絡協議
(1) SSH協議,長期部署推薦SSH,一勞永逸。
①SSH秘鑰:
# 生成rsa秘鑰
$ ssh-keygen -t rsa -C "youremail@example.com"
# 進入虛擬目錄ssh文件中
$ cd ~/.ssh
# 顯示id_rsa.pub文件內容
$ cat id_rsa.pub
②復制秘鑰至github/coding->用戶setting->SSH keys,New SSH Key;
③驗證是否添加成功
$ ssh -T git@github.com # 驗證github是否添加成功
$ ssh -T git@coding.net # 驗證coding是否添加成功
④編輯站點配置文件_config.yml:
deploy:
type: git
repo:
github: git@github.com:yourname/yourname.github.io.git
coding: git@git.coding.net:yourname/yourname.coding.me.git
branch: master
⑤添加遠程倉庫
$ git remote add origin git@github.com:yourname/yourname.github.io.git
(2) HTTPS協議,臨時部署推薦HTTPS。
①直接編輯站點配置文件_config.yml:
deploy:
type: git
repo:
github: https://github.com/yourname/yourname.github.io.git
coding: https://git.coding.net/yourname/yourname.coding.me.git
branch: master
②驗證github/coding用戶名和密碼。
③添加遠程倉庫
$ git remote add origin https://github.com/yourname/yourname.github.io.git
4.正常使用
重新部署:
$ hexo clean
$ hexo g -d
上傳至hexo分支:
$ git add .
$ git commit -m "commit-message"
$ git push origin backup
總結
以上是生活随笔為你收集整理的Hexo | (四)多机同步更新博客的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Kotlin学习与实践 (三)fun 函
- 下一篇: 二维码转换格式