😈 문제 : Git push 오류 (HTTP 400)
git clone 할 때 https로 써서 그런지?? 원인은 아직 정확하지 않은데, https로 git clone한 레포는 Git push 할 때마다 http 400 오류가 뜬다. 근데 또 매번 그러는게 아니라서 원인이 https다!!!라고 자신 있게 말은 못하겠다.
오늘은 다른 분의 블로그 글을 보고 해결했지만, 날 잡아서 깃/깃허브 공부가 필요할 것 같다. 와 세상에 공부할 게 너무 많아. 신난당
[▼ http 400 오류]
git push origin
오브젝트 나열하는 중: 25, 완료.
오브젝트 개수 세는 중: 100% (25/25), 완료.
Delta compression using up to 8 threads
오브젝트 압축하는 중: 100% (19/19), 완료.
error: RPC failed; HTTP 400 curl 22 The requested URL returned error: 400
send-pack: unexpected disconnect while reading sideband packet
오브젝트 쓰는 중: 100% (22/22), 4.43 MiB | 6.44 MiB/s, 완료.
Total 22 (delta 1), reused 0 (delta 0), pack-reused 0
fatal: the remote end hung up unexpectedly
Everything up-to-date
HTTPS 프로토콜로 푸시하는 경우 인증 문제나 URL 설정이 잘못됐을 수 있다고 한다. 리모트 URL이 Https로 시작하는 경우 ssh 로 전환을 고려하라고 해서..바로 확인해봤다.
https로 시작해서 바꾸기로함.
🧩 해결 : HTTPS를 SSH로 전환하기
// 1. 새로운 키 생성 및 등록
ssh-keygen -t rsa -b 4096 -C "email@gamil.com"
// 2. Github에 ssh키 추가
// 3. 리모트 URL 변경 (현재 https를 ssh로 전환)
git remote set-url origin git@github.com:<username>/<repository>.git
// 4. 변경 확인
git remote -v
1. 새로운 키 생성 및 등록
- 새로 생성된 ssh키는 기본적으로 `~/.ssh/id_rsa`에 저장됨
- 공개키를 확인 :
cat ~/.ssh/id_rsa.pub
- `ssh rsa~`로 시작하는 키 깃허브에 가서 붙여넣기 해야함
2. Github에 ssh키 추가
[설정] - [Access] - [SSH and GPG keys]
3. 리모트 URL 변경
// 현재 https를 Ssh로 전환
git remote set-url origin git@github.com:suyeon-dev/Suyeon-Archive.git
// 변경 확인
git remote -v
아래와 같이 표시되면 성공 :
origin git@github.com:{Id}/{repo 이름}.git (fetch)
origin git@github.com:{id}/{repo 이름}.git (push)
참고
Git Push 오류 (error: RPC failed; HTTP 400 curl 22 The requested URL returned error: 400)
'Front-end' 카테고리의 다른 글
Github | 로컬 브랜치 생성 및 원격 저장소 push (0) | 2024.12.19 |
---|---|
[JS] Date 객체의 형식 지정하기 (방명록 작성일 형식 수정) (0) | 2024.11.14 |
[CSS] 빠른 화면 구현을 위해 기억해 둘 CSS의 기본기 (1) | 2024.11.03 |