나는 인터넷 검색을 시도하고 https://help.github.com/en/articles/connecting-to-github-with-ssh 및 다양하고 다양한 가이드를 읽었습니다 . 나는 할 수 git push -u origin master
없거나git push origin master
(동일한 명령).
나는 적어도 2 년 동안 내 자식 계정을 가지고 있었다. push -u origin master
랩톱에서 리포지토리를 성공적으로 만들 수 있었지만이 데스크톱에서는 문제가 있습니다.
내가 시도한 것은 다음과 같습니다.
1. 내 자식 사용자 이름을 설정했습니다.
2. git 사용자 이메일을 설정했습니다.
삼. 내 /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으로 chmodded
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는 셸 액세스를 제공하지 않습니다.
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 사용자 이름이 NOT mederot
이고 내 계정 페이지 당 내 github 토큰이 올바른지 확인했습니다 (처음 2 자 및 마지막 2 자 확인).
17. # 16을 확인하려면 ~ / .gitconfig에
[github]
token = mytoken...
user = medero
18. 그게 ssh-key add ~/.ssh/id_rsa
필요하다면 ...
이론 :
나는 인증 된 SSH를 얻을 때, 사용자 인사말이기 때문에 뭔가 비린내가 용의자 mederot
가 아니라 medero
내 ACCT이다. 내 github 계정의 내용이 잘못 캐시 될 수 있습니까?
나는 또한 일부 로컬 ssh 캐싱 이상한 점을 의심합니다. 왜냐하면 i mv ~/.ssh/id_rsa KAKA
및 mv ~/.ssh/id_rsa.pub POOPOO
, 그리고 수행 ssh git@github.com -v
하는 경우 여전히 나를 인증하고 이름을 바꿀 때 내 /home/meder/.ssh/id_rsa를 제공한다고 말합니다?! 캐시해야하나요?!