Hexo博客多端同步問題
搭完博客,發現只有公司電腦上有源文件,如果回家就沒發繼續更新博客了。也不能拿着U盤到處拷貝。所以就把博客源文件放到github上解決同步問題。
博客源文件同步
在博客根目錄執行
git init
git remote add origin [email protected]:lanpangzhi/lanpangzhi.github.io.git # 添加遠程倉庫 注意這裏要添加你自己的倉庫 lanpangzhi 換成你自己的用戶名
git checkout -b hexo # 新建hexo分支並切換到hexo分支
git add . # 所有變化提交到暫存區
git commit -m "解決同步問題" # 提交文件
git push origin hexo # 推送hexo分支
這就成功了,github上已經有博客的源文件了。
推薦把hexo設置爲默認分支。
git submodule 實現第三方主題同步
因爲之前是直接把第三方主題克隆到博客目錄,有什麼改動是無法推送到作者Git倉庫的,這個時候需要把第三方主題的項目Fork到自己倉庫,自己賬號下生成一個同名的倉庫,並對應一個url,我們應該git clone自己賬號下倉庫的url。
執行如下操作。
git submodule add [email protected]:lanpangzhi/hexo-theme-next.git themes/next
把自己倉庫下面第三方主題添加到Git子模塊, 注 : themes/next 這裏的目錄是因爲我用的next主題纔會寫themes/next 如果你用的不是next請把next替換成你的第三方主題文件夾名字。
博客的根目錄會多一個.gitmodules文件,這是一個配置文件,保存了項目 URL 和你拉取到的本地子目錄。
這就添加成功了,然後執行如下操作。
git add . # 所有變化提交到暫存區
git commit -m "添加第三方主題Git子模塊" # 提交文件
git push origin hexo # 推送hexo分支
更換電腦同步博客和第三方主題
同步博客
電腦上一定要先node和git,執行如下操作。
npm install hexo-cli -g # 先安裝hexo的腳手架
git clone [email protected]:lanpangzhi/lanpangzhi.github.io.git # 下載項目,因爲hexo 是默認分支,所以這裏直接會下載hexo分支
npm i # 安裝依賴
hexo s # 啓動服務器
剩下的就自行操作了。博客已經完成了同步。
注:每次寫完文章部署網站後,記得再執行如下操作。
git add . # 所有變化提交到暫存區
git commit -m "新增xxx文章" # 提交文件
git push origin hexo # 推送hexo分支
同步第三方主題
在博客根目錄執行如下操作。
git submodule init # 初始化本地配置文件
git submodule update # 拉取子模塊
如果第三方主題有修改的,修改完成後在第三方主題目錄執行。
git add . # 所有變化提交到暫存區
git commit -m "修改主題xxxx" # 提交文件
git push origin master # 推送master分支
這樣就會把修改的主題推送到自己的倉庫。
這樣就實現多端同步了。
我的博客和github地址
參考
http://devtian.me/2015/03/17/blog-sync-solution
https://git-scm.com/book/zh/v1/Git-%E5%B7%A5%E5%85%B7-%E5%AD%90%E6%A8%A1%E5%9D%97