주요 원인들
1. Passphrase 입력 실패
- git push 시 SSH 키의 passphrase를 여러 번 잘못 입력하면 연결이 차단됩니다
- git pull은 이미 인증된 상태여서 작동할 수 있습니다
2. SSH Agent 문제
- SSH agent가 키를 제대로 로드하지 못했을 수 있습니다
3. 권한 문제
- 원격 저장소에 push 권한이 없을 수 있습니다
해결 방법
1. SSH Agent에 키 추가
# SSH agent 시작
eval "$(ssh-agent -s)"
# SSH 키 추가 (passphrase 한 번만 입력)
ssh-add ~/.ssh/id_ed25519
2. SSH 연결 테스트
# GitHub인 경우
ssh -T git@github.com
# GitLab인 경우
ssh -T git@gitlab.com
3. 원격 저장소 URL 확인
git remote -v
4. 임시 해결: HTTPS 사용
# 현재 원격 URL을 HTTPS로 변경
git remote set-url origin https://github.com/username/repository.git
5. SSH 키 권한 확인
chmod 600 ~/.ssh/id_ed25519
chmod 644 ~/.ssh/id_ed25519.pub
가장 간단한 해결책은 SSH agent에 키를 추가하는 것입니다.
답글 남기기