我尝试使用谷歌搜索,并通读https://help.github.com/en/articles/connecting-to-github-with-ssh和各种指南。我无法使用git push -u origin master
或git push origin master
(同一命令)。
我的git帐户至少已有2年左右的时间。我已经能够push -u origin master
在笔记本电脑上成功创建存储库和文件,但是在此台式机上却遇到了问题。
这是我尝试过的:
1.我已经设置了我的git用户名
2.我已经设置了我的git用户电子邮件
3.我已将/home/meder/.ssh/id_rsa.pub的内容上传到github的帐户页面。我已经确认我没有粘贴任何空格
4.我用以下内容创建了〜/ .ssh / config:
Host github.com
User git
Hostname github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa
我已将.ssh更改为700,id_rsa 600
5.我添加了正确的远程原点,没有打错字:git remote add origin git@github.com:medero/cho.git
6.确认#5,这是我的.git / config。该目录正确,而不是另一个目录:
[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = git@github.com:medero/cho.git
7. ssh git@github.com -v
给我成功的身份验证
8.一件奇怪的事是,它向我打招呼的用户名已t
附加到该用户名。我的github用户名medero
不是medert
。
嗨,麦德洛!您已成功通过身份验证,但是GitHub不提供Shell访问。
9.我没有代理或防火墙
10.提供了密钥,这里是来自的输出-v
:
debug1: Host 'github.com' is known and matches the RSA host key. debug1: Found key in /home/meder/.ssh/known_hosts:58 debug1: ssh_rsa_verify: signature correct debug1: SSH2_MSG_NEWKEYS sent debug1: expecting SSH2_MSG_NEWKEYS debug1: SSH2_MSG_NEWKEYS received debug1: SSH2_MSG_SERVICE_REQUEST sent debug1: SSH2_MSG_SERVICE_ACCEPT received debug1: Authentications that can continue: publickey debug1: Next authentication method: publickey debug1: Offering public key: /home/meder/.ssh/id_rsa debug1: Remote: Forced command: gerve mederot debug1: Remote: Port forwarding disabled. debug1: Remote: X11 forwarding disabled. debug1: Remote: Agent forwarding disabled. debug1: Remote: Pty allocation disabled. debug1: Server accepts key: { some stuff, dont know if i should share it debug1: Remote: Forced command: gerve mederot debug1: Remote: Port forwarding disabled. debug1: Remote: X11 forwarding disabled. debug1: Remote: Agent forwarding disabled. debug1: Remote: Pty allocation disabled. debug1: Authentication succeeded (publickey).
11.这是我使用的命令
mkdir cho
git init
touch README
git add README
git commit -m 'test'
git remote add origin git@github.com:medero/cho.git
git push -u origin master
12我不想创建新的SSH密钥。
13.如果我使用ssh git clone并进行编辑,提交和git push,我将得到相同的结果。
14.这是实际的错误:
$ git push
ERROR: Permission to medero/cho.git denied to mederot.
fatal: The remote end hung up unexpectedly
15我已经设置了我的github用户名和github令牌:
$ git config --global github.user medero $ git config --global github.token 0123456789yourf0123456789token设置系统上所有git实例的GitHub令牌
16.我已经确认我的github用户名不是,mederot
并且我的github令牌在我的帐户页面上是正确的(已验证的前2个字符和后2个字符)。
17.要确认#16,〜/ .gitconfig包含
[github]
token = mytoken...
user = medero
18.我做了,ssh-key add ~/.ssh/id_rsa
如果有必要的话...
理论:
我怀疑其中有些可疑,因为当我通过ssh身份验证时,用户问候语是 mederot
不是medero
,这是我。我的github帐户中的内容可能被错误地缓存了吗?
我还怀疑某些本地ssh缓存的怪异性,因为如果i mv ~/.ssh/id_rsa KAKA
和mv ~/.ssh/id_rsa.pub POOPOO
,and do ssh git@github.com -v
,它仍然可以对我进行身份验证,并说当我重命名它时,它可以为我的/home/meder/.ssh/id_rsa服务!它必须被缓存吗?