카페나 도서관에서 코딩하고, 작업물을 push하려는데 종종 에러가 발생하더군요. 그 중 한 가지 사례에 대해 원인과 해결방법을 소개해리고자 합니다.
문제
git push를 하니 위와 같이 에러가 발생한다.
"ssh: connect to host github.com port 22: Connection timed out
fatal: Could not read from remote repositoroy.
Please make sure you have the correct access rights and the repository exists."
원인
원인 1
git remote의 update가 필요해서 발생할 수 있다.
원인 2
git add remote 시 github 주소를 잘못 입력해서 발생할 수 있다.
원인 2
github은 초기 세팅값으로 22번 포트를 이용해 데이터를 주고 받도록 설정되어 있다. 그런데, 현재 사용중인 네트워크 망에서 해당 포트의 접근을 막아버려서 위와 같은 에러가 발생하는 것이다.
해결방법
원인 1의 해결방법
git remote update
원인 2의 해결방법
기존 등록한 remote 원격 저장소 주소를 삭제후 다시 등록해주자.
// 1. remote 주소 삭제
git remote remove [원격 저장소명]
// 2. remote 주소 추가
git remote add [원격 저장소명] [url주소]
// 3. remote 주소 확인
git remote -v
원인 3의 해결방법
단순히, 본인 집이나 다른 장소로 가서 git push를 시도하면 해결된다. 하지만, 매번 이럴 수는 없으니 우리는 접속 포트를 추가를 통해 그 자리에서 해결해보도록 하자.
$ vim ~/.ssh/config
먼저 위와 같이 ~/.ssh/config 설정창으로 이동해주자.
Host github.com
Hostname ssh.github.com
Port 443
다음으로 위와 같이 Port를 새로 추가해주면 정상적으로 git push가 되는 것을 확인할 수 있다.
그럼 오늘도 즐거운 코딩!!
참고사이트
'코딩 | 개념 정리 > Git & GitHub' 카테고리의 다른 글
Git push / pull이 안되는 경우(fatal: refusing to merge unrelated histories) (0) | 2022.03.13 |
---|---|
vi 편집기 정리 (0) | 2022.01.26 |
1day 1commit 프로젝트, github에서 발생하는 contribution 에러 (0) | 2021.07.17 |
GIT 기초 사용법 3_원격 저장소 (0) | 2021.07.14 |
git의 원리 분석 도구_gistory 사용법 (0) | 2021.07.13 |