1. master改为main

GitHub最近已经把主分支改为main了,不再是master,所以Blog下的 _config.yml文件里应该是

1
branch: main

其他与master有关的也命令也需要用main

2. Git error:Host Key Verification Failed

用git上传文件到GitHub首先得利用SSH登录远程主机,在利用公钥登录时,输入

1
ssh -T git@github.com

进行检验,出现 Git error:Host Key Verification Failed错误,出现错误的主要问题是known_hosts文件的配置问题,参考stackoverflow回答

  1. mkdir -p ~/.ssh
  2. ssh-keyscan -t rsa github.com >> ~/.ssh/known_hosts
  3. ssh-keygen -t rsa -C "user.email"
  4. open the public key with this command $ cat ~/.ssh/id_rsa.pub and copy it.
  5. Add the id_rsa.pub key to SSH keys list on your GitHub profile.

3. error: failed to push some refs to ‘xxx/xx’

执行git push origin master时,弹出窗口需要输入用户名和密码,用户名输的github名,密码刚开始以为是github登陆密码,但是错了。提示说21年8月后不允许使用用户名和密码登陆了,解决方法是使用Personal access tokens。令牌方式登录:

  1. 直接打开 https://github.com/settings/tokens 这个界面,或登录Github后点击头像-settings-左侧列表Developer settings-Personal access tokens
  2. 右上点击Generate new token
  3. note随便填写,选择过期时间
  4. 勾选上下边的全部。(这个是token具有的权限)
  5. 最后点击底部的Generate token 生成token

然后用户名还是原先的用户名,但是密码这里填写生成的token就行了。

4. 每次提交都需要输账号密码

后续在每次提交代码时,发现都需要输入账号密码,很麻烦,可找到Blog下的_config.yml文件里,原先repository:那里填写的是个人仓库的地址。改成

1
https://oauth2:*******************@github.com/Wei-LL/Wei-LL.github.io.git

这里****填写的是token。后续每次提交就不用了输账号密码了。

5. Failed to connect to github.com port 443: Timed out

在hexo init 命令初始化以及有时git clone代码时会碰到

1
Failed to  connect to github.com port 443: Timed out

因为是网络问题,最直接的方法就是使用代理,后台挂好代理后,git窗口中

设置git代理

1
git config --global http.proxy localhost:7890

其中7890是代理的端口号,我用的clash,直接在clash主界面常规查看。

记得之后取消代理

1
git config --global --unset http.proxy