hexo+github搭建博客

前提环境:node.js git

1.hexo安装
mkdir MyBlog
cd MyBlog
npm install hexo-cli -g
hexo init
npm install
hexo server
复制代码

这个时候应该在console会显示:

Hexo is running at http://0.0.0.0:4000/.

这个时候直接访问该地址,即部署到本地的博客:

2.公钥和私钥生成及其配置

进入~/.ssh目录,目录中可能已经存在其他公钥和私钥对,现在要专门添加一个新的公私钥对。

//以指定名称生成公私钥对
ssh-keygen -t rsa -C "B" -f B
复制代码

然后将公钥添加到github账号下

这个时候,.ssh目录下应该有多对公私钥,现在查看密钥列表

ssh-add -l
复制代码

密钥列表里面应该没有刚才新建的密钥,现在将它添加进去

ssh-add ~/.ssh/B
复制代码

然后再使用ssh-add -l 发现已经添加了,A是我之前添加的。

2048 ac:51:8d:fc:1e:6f:07:ca:3b:3d:c7:0b:79:ee:a1:27 A (RSA)
2048 73:81:8f:03:04:7e:56:a0:cf:22:98:52:47:12:ee:3b /Users/user/.ssh/B (RSA)
复制代码

现在.ssh目录中就了2对连接github.com的公私钥对,现在通过.ssh下config文件去配置host,在不同的情况下通过对应的公私钥对连接github,配置如下:

Host github
     HostName github.com
     User git
     IdentityFile ~/.ssh/A
Host myBlog
     HostName github.com
     User git
     IdentityFile ~/.ssh/B                   
复制代码

然后通过如下方式,确认以私钥B连接到github

ssh -T git@myBlog
复制代码

输出:

Hi yourName! You've successfully authenticated, but GitHub does not provide shell access.

说明已经成功

3.在github上新建repo,以yourName.github.io方式命名(必须),youName是github上的账号名称。
4.配置hexo部署到github
vim _config.yml
复制代码
deploy:
  type: git
  repository: git@myBlog:yourName/yourName.github.io.git
  branch: master
复制代码

hexo配置文件的语法是冒号后面必须有空格,否则在之后部署的时候会报错。

然后执行如下命令,安装git部署的工具:

npm install hexo-deployer-git --save
复制代码

最后生成静态文件并部署:

hexo g -d
复制代码

访问yourName.github.io可以查看最后部署到github上的效果

问题解答:

1.执行hexo g -d的时候,遇到:

Error: Permission denied(publickey).

fatal: Could not read from remote repository

解决办法:

1.先看一下.ssh目录下的配置文件config

cd ~/.ssh

vim config

看一下host 别名配置的是什么,比如

Host github

​ HostName github.com

​ user git

​ IdentityFile ~/.ssh/zhengzhiwenBlog

host的别名就是github

通过ssh -T git@github 看一下是否能够连接,如果不能连接,说明github账号下没有配置公钥,先去github上配置公钥

2.确定可以通过ssh连接github之后:

查看一下系统ssh-key的代理:

ssh-add -l

如果出现 The agent has no identities。说明没有代理,需要添加,按上文中提到的方式:

ssh-add ~/.ssh/zhengzhiwenBlog

得到提示:

Identity added: /Users/zhengzhiwen/.ssh/moma (/Users/zhengzhiwen/.ssh/zhengzhiwenBlog)

说明添加成功

再试试hexo g -d命令,进行部署。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值