再次利用hexo搭建个人博客的过程中,依旧踩了很多坑,主要之前Git用的不熟练,现在顺便也补一下Git的配置和使用方法。
Git主机秘钥配置
使用Git来进行分布式管理,首先要配置用户名,邮箱,以及主机秘钥1
2git config --global user.name "yourname"
git config --global user.email "youremail"
邮箱与用户名与github一致ssh-keygen -t rsa -C "youremail"
会让设置密码什么的,一般可以直接回车不设置,完成后在~.ssh/文件夹里,会有公钥id_rsa.pub和私钥id_rsa,公钥在github在github的账号settings的SSH keys处配置。(新电脑第一次设置好秘钥,clone或push时git会报错The authenticity of host ‘github.com (13.229.188.59)’ can’t be established,后面要输入yes/no,得手动输入yes,直接回车会失败)
两个github账号引起的错误
想着本来那个账号注册的比较随便,用户名有点怪怪的,于是打算换一个,结果换了一个配置好秘钥后居然不能push到仓库也不能用hexo deploy,原因是第一次用git提交到远程仓库时,需要输入github的账号密码,系统自动记住了,换账号后,需要主要删除之前账号的信息,在控制面板->用户账户->凭据管理器(管理windows凭据)处,删除git凭据
hexo博客搭建各类坑
原先开启标签和分类后,切换主题后再切回来会出错,导致主题样式异常,需要重新开启标签和分类
所用主题开启标签和分类后,还需要去改标签和分类的index.md的内容,才能正确显示
评论系统,开启gitment
原先是这样的1
2
3
4
5
6gitment: false
# gitment:
# owner: LiHuaBai
# repo: LiHuaBai.github.io
# client_id:
# client_secret:
正确开启写法1
2
3
4
5
6# gitment: false
gitment:
owner: LiHuaBai
repo: LiHuaBai.github.io
client_id:申请的id
client_secret:申请的secret
在此处申请OAuthid
其中的Homepage URL和Authorization callback URL可以都写成https://username.github.io
申请后的OAuth Apps在这里查看
然而配置好依旧不能用,查找后发现是原开发者的服务器已经关闭了,找了一个别人搭好的服务器,在主题的layout文件夹里面找到gitment的部分,修改如下1
2<link rel="stylesheet" href="https://jjeejj.github.io/css/gitment.css">
<script src="https://jjeejj.github.io/js/gitment.js"></script>
可正常使用评论功能
github存储hexo本地文件
为了之后换电脑啥的博客不在丢失,觉得最好还是把本地文件存在github上,这样也容易找回,一般来说可以用同一个仓库,新建一个分支,先把仓库中所存储的博客的静态html文件clone下来git clone git@github.com:LiHuaBai/LiHuaBai.github.io.git
只留下git文件,其余删除,把hexo文件夹内部的以下文件复制过来
- scaffords
- source
- themes
- .gitignore
- _conig.yml
- package.json
然后将这些文件保存在仓库的另一个分支下1
2
3
4git checkout -b hexo_local_file
git add --all
git commit -m "save local file"
git push --set-upstream origin hexo
利用github重新恢复博客
将hexo文件从仓库中clone下来,重新安装依赖库后,就可以重新启动了1
2
3
4git clone -b hexo_local_file git@github.com:LiHuaBai/LiHuaBai.github.io.git
cnpm install
hexo g
hexo s