一台电脑多git账号如何部署hexo博客

本文最后更新于:1 年前

多git账号部署hexo博客

如何在一台电脑上配置多个git账号可以看我的这篇博客一台电脑设置多个Git账号

前面成功配置git账号之后,接下来就是修改hexo配置文件的git部署地址,打开你博客根目录下的_config.yml文件(注意是博客根目录下的配置文件,不是别的地方的),找到deploy项,改为如下内容:

1
2
3
4
deploy:
type: git
repository: git@你在config文件内配置的host别名:你的用户名/你的用户名.github.io.git
branch: master

按理来说这样就可以成功使用hexo g-d部署博客到Github 上了,但是我却遇到了问题。。

部署时遇到的问题和解决办法

当在一台电脑上配置了不止一个git账号时,部署博客就出现了一个奇怪的问题:

就像上面图片一样,错误的原因是没有配置user.email和user.name,既然没有配置,那我配置上不就好了吗:

1
2
git config user.email "youremail"
git config user.name "yourname"

备注:这里我没有用--global设置全局的name和Email,主要是因为电脑有多个git账户,怕以后提交的时候出现,明明想用这个用户提交,结果实际却用了另外一个,用上面的代码分别为每个项目设置name和Email就不用担心这样的问题了。

但是当我配置完之后再执行部署命令时依然报错,而且和原来的好像还有一点不一样,但是看原因好像还是没有配置name和Email:

这就奇怪了,我刚刚才配置完,怎么还说没有配置呢。我又检查了博客下的_config.yml文件deploy配置,确定没有错误之后我又尝试了一下,还是不行。这时我想到以前为了配置多个git账号,曾经看了很多相关的文章,其中有篇文章好像提到了git提交时报没有配置user的错误,解决办法是到项目下的.git文件夹内找到config这个文件,在这个文件的后面加上这样一段内容:

1
2
3
[user]
email=your email
name=your name

想到这里,我又去了博客下的.git文件夹看了下config这个文件,发现里面有上面的内容,既然这样那就不应该了,为什么会部署不上呢,这时我突然看到有一个叫.deploy_git的文件夹,这个文件夹我记得一开始是不存在的,应该是在部署之后生成的,并且我在把博客源文件推到git上时也忽略了这个文件夹没有推送,这个文件夹内我记得也有一个.git文件夹,那肯定也有config文件,打开文件一看果然这个文件内没有上面提到的user,在我添加上之后再使用hexo d部署博客,发现推送成功了。之后我又仔细看了下两个.git文件夹内的config文件的区别,发现一个是配置的博客源文件的地址,另一个则是生成的博客静态文件也就是博客网站那个仓库的地址,因为只配置了源文件仓库的地址没有配置网站静态文件仓库的地址,所以才会一直报错。

但是还有一个不太明白的点,之前我只用一个git账号部署博客的时候并没有出现这样的问题,只要把博客的配置文件和user.email与user.name都写好就能完成部署,但是现在有多个账号了则不行,我还没有搞清楚是什么原因,如果有人知道是怎么回事麻烦告诉我一下。


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!