部署 hexo 到 github 和 coding 上

前言

上一篇博文中, 搭建成了 hexo 博客, 设置好了 Next 主题
但是, 你懂的, 功夫网, 有时候 github 上打开 .io 会是挺慢的, 所以部署到国内的话会好不少(应该)

国内两个比较好的代码托管的网站应该就是 oschina 和 coding 了吧, 这里先选 coding 来另作部署, 因为…..它的配色我还是挺喜欢的2333333

  • .
  • .
  • .
  • .

完整的步奏汇总在: 这几天对搭建这个 hexo 博客汇总一下帖子

  • .
  • .
  • .

找资料

一开始肯定是看有没有哪个前辈做过啦~, 上一篇说到了一个博主已经做了, 所以先参照他的来弄弄, 然后还有一个博主的也可以看看, 写的也挺详细: hexo同时部署到coding(gitcafe)和github

好了, 开始.

  1. 因为我是不同的邮箱注册了 coding, 所以好像我要重新生成个 sshkey…
  2. 然后添加到 coding 的 sshkey 中
  3. 验证…..额….失败….

    经过几次重复上面操作确认步奏无误后, 还是不行, 在首次连接时候会提示:
    Warning: Permanently added ‘git.coding.net,14.215.101.70’ (RSA) to the list of known hosts.
    Permission denied (publickey).
    进到这个 known hosts 查看到最后一条记录, 是 coding 的, 但是后面跟着的 rsa 是和 github 一样, 说明那个 config 文件没有配置正确, git coding 时用了 github 的 key, 看到它连的是 git.coding.net , 将配置文件中的 coding.net 改成 git.coding.net, 再试, 成功

  4. 好了, 这回成功了….至此, 第一篇博文的部分完成(之后分流到七牛的还要参考下这个), 我们看看第二篇的接下去要怎么弄, 下面的都是按照这个博文来的, 有问题会详细说, 没问题就直接过
  5. 嗯, 新建项目, 照之前 github 方式走一遍… coding 建项目不懂的详细看这篇
  6. 建好项目后, 进入站点的文件夹(也就是你的博客放在哪个文件夹了, 之前创建博客的那个文件夹), 改配置文件_config.yml
  7. 额…到了 hexo d 部署的时候卡在 create mode 100644 vendors/velocity/velocity.ui.min.js 好久啊, 好像有点不正常… Ctrl+C 重新部署一次,
  8. 这次好了, 不过我傻逼了下, 在_config.yml 之前添加的参数后面都加了个空格, 我也不知道是不是这个原因…或者是我之前添加参数后没有保存?所以源文件还是之前那样? 记得保存了再试, 应该就好了
  9. 终于到了开启 page 服务的时候啦~~, 嗯, 它那个开启分支默认填的是 coding-pages, 如果你建的博客项目是在 master 分支的, 要改成 master!! 反正要和你项目的分支一样!

测试一下~

进入coding 的博客好的! 成功了!
然后再看自己的 github 上的地址嗯, 很好~

多开博客

另外, 有开小号或者帮妹纸搭建管理的, 可能是需要有几个 github 帐号, 按照上面的话, 还需要有 coding 帐号, 那么, 当一台电脑访问两个不同的网站时, 对应两个不同网站的帐号就是按照上面的, 这多出来一份博客要怎么弄?

  1. 首先要给新一个人按照上面的步骤配置好 SSHKeys, 一样是每个网站各一份, 上传好公钥后, 本地主要设置的是 config 文件, 我们要让ssh 客户端知道在对应这个域名主机时是需要哪个密钥, 我们就要对这些主机设置别名, 而且在给博客添加 git 远程地址时, 域名的地方要换成我们起的别名,

如何同一台电脑配置多个git或github账号

我的话就是在原来之前设置的那些不改动, 因为已经设置过相应的站点了, 再改动恐怕还要改博客文件夹配置文件中仓库的主机域名吧. 所以我们要添加哪个人的一个博客, 就在主机域名前加上前缀好了, 测试 ssh -T git@前缀.coding.net 能通就行, 也测试下之前原来的两个吧, 以免在设置的时候有误操作造成问题.

理解了帖子里面的分析, 说白了就是会根据 config 文件里Host 名字来找对应的 HostName 替换上去, 让后使用那段指定的私钥来连接所以, 在 git 测试连接的时候, 那个git@Host 就行了,

在给 hexo 的_config 设置仓库地址时, 赋值下来的地址也要把那个@这个域名:换成我们设置的别名, 到时候会自动替换回去, 并用指定的私钥连接

至此完成~

热评文章