当前位置 : 首页 » 文章分类 :  开发  »  Hexo博客(15)部署与备份总结

Hexo博客(15)部署与备份总结


Git仓库与ssh配置

Git仓库使用情况

目前我的博客使用了2家代码托管平台的远程Git仓库
2017.12.20启用新域名madaimeng.com,之后博客更新都在新域名上,旧域名masikkk.com只保留之前的文章,不再更新。
2019.1.7 GitHub在被微软收购后宣布私有库完全免费不限量,决定把源码往GitHub私有库中备份一份。

ssh密钥使用情况

与使用的2个git仓库相对应,一共需要2对ssh私钥公钥:

  • id_rsa/id_rsa.pub:用于连接Github,部署博客。
  • coding_rsa/coding_rsa.pub:用于连接Coding,部署博客和备份博客源码。

ssh配置

在ssh的~/.ssh/config配置中指定域名与密钥文件的对应关系
注意:公司的配置需要ProxyCommand代理,家里的配置不需要代理

Host github.com *.github.com
    ProxyCommand connect -H 172.17.18.80:8080 %h %p   #设置代理
    IdentityFile ~/.ssh/id_rsa

Host git.coding.net
    ProxyCommand connect -H 172.17.18.80:8080 %h %p   #设置代理
    IdentityFile ~/.ssh/coding_rsa

2017.5.25更新:由于公司内网代理环境下无法连接git.oschina.net,不再使用开源中国码云Git仓库备份博客源码。


每次博客更新流程

拉取博客最新源码

每次写博客时,先要git pull origin master从Coding上拉取最新博客源码,前提是本地的origin远程仓库对应的是Coding上的博客备份仓库,当然如果当前在上次git push的电脑上则不用git pull。

文章写作、生成与本地调试

hexo n article-name 新建md文本(现在我都是直接在source/_posts目录中新建.md文本文档,不用命令了),直接用notepad++等编辑md文件修改博客内容,写完后hexo g生成,hexo s启动本地服务预览调试。

部署

调试没问题后hexo d同时部署到GitHub Pages和Coding Pages。

备份博客源码

最后在博客根目录下git add .将新添加的所有文件纳入git版本控制,
git status -s查看文件状态从而知道本次添加了哪些文章、修改了哪几个文件,
git commit -m "提交日志"本地提交,
git push origin master推送到Coding上的博客备份仓库中。


更换电脑后需要做的

以下都是Windows环境

安装git

从Git官网https://git-scm.com/downloads 或 msysgit(Git for Windows) http://gitforwindows.org/ 下载并安装Git for Windows。安装后就有了Git Bash命令行工具。

安装Node.js

Windows:从 Node.js 官网 https://nodejs.org/en/ 下载并安装 Windows 版。安装 Node.js 之后 Git Bash 中就有了 npm 命令。如果公司内访问外网需要配代理则给 npm 设置代理。
Mac:brew install node 使用 Homebrew 一个命令安装 Node 即可。

ssh公钥私钥配置

生成Github和Coding的ssh公钥私钥对,把公钥填入对应网站页面,配置~/.ssh/config,指定不同host所使用的密钥。

从Coding上clone博客源码到本地

假设本地已安装了git和node.js,也已经有了npm环境,方法如前述。
从Coding上克隆博客源码到本地madaimeng_backup目录:

  • 使用ssh方式
    git clone git@git.coding.net:masikkk/madaimeng_backup.git

推荐使用ssh方式,可配合ssh密钥免密访问,不用每次输入密码

  • 使用https方式
    git clone https://git.coding.net/masikkk/madaimeng_backup.git
    如果使用https方式,由于我的博客源码备份项目是私有项目,clone时需要输入coding的账号和密码。

安装hexo环境

然后进入madaimeng_backup目录,依次执行下面命令:
npm install -g hexo-cli,安装hexo最新版
npm install,根据package.json安装依赖,因为.gitignore文件中配置了将node_modules/文件夹忽略,所以之前安装的插件并不会备份到远程Git仓库,但是我们备份了package.json文件,直接使用npm install方法就可以根据dependencies配置安装所有的依赖包。
注:不需要单独安装hexo-deployer-git,已经添加在package.json中,npm install就一起安装了。
注意不需要执行hexo init指令,因为hexo需要的文件目录我们已经有了,如果执行hexo init会将已有文件覆盖掉。

需要手动修改的Hexo模块

目前为止有唯一一个手动修改的Hexo模块,即Hexo默认MarkDown渲染引擎中的node_modules\marked\lib\marked.js 脚本,由于Hexo模块没有备份,每次换电脑后都要手动修改此脚本,具体修改参考 Hexo博客(13)添加MathJax数学公式渲染

上面步骤都完成后,本地就已恢复了hexo所需的所有环境,之后就是正常的博客更新流程。


上一篇 Apache-ActiveMQ

下一篇 Eclipse-EGit插件使用

阅读
评论
1.2k
阅读预计4分钟
创建日期 2017-08-25
修改日期 2019-04-22
类别

页面信息

location:
protocol:
host:
hostname:
origin:
pathname:
href:
document:
referrer:
navigator:
platform:
userAgent:

评论