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

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


Git仓库与ssh配置

Git仓库使用情况

目前我的博客使用了2家代码托管平台的远程Git仓库:

ssh密钥使用情况

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

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

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文本,直接用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) https://git-for-windows.github.io 下载并安装Git for Windows。安装后就有了Git Bash命令行工具。

安装Node.js

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

ssh公钥私钥配置

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

从Coding.net上clone博客源码到本地

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

  • 使用ssh方式
    git clone git@git.coding.net:masikkk/hexo_backup.git
    推荐使用ssh方式,可配合ssh密钥免密访问,不用每次输入密码
  • 使用https方式
    git clone https://git.coding.net/masikkk/hexo_backup.git
    如果使用https方式,由于我的博客源码备份项目是私有项目,clone时需要输入coding.net的账号和密码。

安装hexo环境

然后进入hexo_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模块没有备份,每次换电脑后都要手动修改此脚本,具体修改参考http://masikkk.com/article/hexo-13-MathJax/

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


上一篇 Apache-Maven-仓库

下一篇 Eclipse-EGit插件使用

域名迁移公告
2017年12月20日起,本博客迁移到新域名madaimeng.com,旧域名masikkk.com不再更新内容,但将永久保持可访问!
阅读
1,108
阅读预计4分钟
创建日期 2017-08-25
修改日期 2017-10-13
类别
百度推荐