Hexo博客hexo deploy报错
1.ErroeType
这个错误实在执行hexo deploy命令将静态文件上传到github时出现的,主要的问题是找不到git分支,查看本地hexo目录确实没有这个文件夹。
解决这个问题的方案是创建git文件夹,
1 | git init |
在本地hexo目录中找到.deploy_git文件夹,进入到文件夹输入命令创建git文件夹,再回去输入
hexo deploy上传即可。
2.ErrorType
这个错误是因为本地的博客版本与远程的版本不一致,解决方法是删除博客目录下的.deploy_git文件夹,然后克隆远程(也就是将要发布的地址)的仓库到博客目录里面,然后改名字为.deploy_git,另外一个不那么绕的办法是把远端仓库删除,删除本地的.deploy_git,再次发布,不过这样做会导致之前的提交记录丢失。
这是网上查到的解决方案,但是好像对于我并不是很友好,问题没有解决,对于这个报错网上的发布的解决方法发五花八门,发布的时间都在几年前,所以只能自己去试着排除……
(1)错误分析
首先本地运行一切正常,所在问题就是在执行hexo deploy命令时报错,那麽问题就出在本地与远程仓库连接这里,我们就试着从新配置一下仓库。
(2)创建github仓库
打开 GitHub ,点击 new
一个repository,创建一个新的仓库,仓库名称必须要遵守 GitHub Pages 的格式: 用户名.github.io ,否则会出问题,并且勾选 Initialize this repository with a README ,如下图所示。
建好仓库后,在 Settings 设置中有一个 GitHub Pages 一项,里面就写着 GitHub Pages 为我们创建好的域名。在浏览器中访问就可以看到一个初始的界面。这就是博客的默认地址,当然后面我们也可换成自己的域名。
如果还想用原来的仓库,就跳过这一步,进行下一步
(3)配置SSH
务必确保在 本地PC 已经完成了Node.js、Git 和 Hexo 的安装,打开 Git Bash ,如果是第一次使使用 Git 的话:
1 | # 以下 user.name 和 user.email 输入自己的,示例: |
使用 ssh-keygen 生成私钥和公钥:
1 | ssh-keygen -t rsa |
然后一路按回车
找到你的密钥 id_rsa
和公钥 id_rsa.pub
的位置。
接着在 GitHub 头像下的 Settings 里找到添加 SSH key,点击New SSH key 。
将刚刚生成的公钥 id_rsa.pub
文件里的内容复制到 Key 里,然后选择添加,GitHub 会提示输入密码确认。
接着在 本地PC 的 bash 上输入:
1 | ssh -T git@github.com |
(4)在本地pc上完成推送部署
接下来回到我们的 PC 上,在刚刚我们生成的 D:/blog 目录下,找到 hexo 的配置文件 _config.yml
,使用各种好用的编辑器打开它。在最下面有个 deploy
的配置,在那里修改为自己的 ID,示例:
1 | deploy: |
提示:缩进一定不能出问题。
然后保存并退出。再去执行hexo d就会成功推送到远程仓库。
提示:如果想要保存以前的博客,在进行操作前把github仓库里的东西克隆下来,配置完成后吧文件复制到public文件夹,执行生成静态文件命令,再进行远程推送。
本文章只是阐述了一下hexo博客部署到github的步骤,按照步骤来我相信都能够创建属于自己的博客,详细的步骤和讲解请移步到hexo官方文档进行查阅。