8월 13일부터 기존의 패스워드 인증방식 지원을 중단한다고 이전부터 알림 메일이 왔다.
하지만 그동안 읽지 않았음
그러다 대체공휴일인 16일까지 푹 쉬고 다시 공부한걸 저장하는데 안된다는 메세지가 뜸.
이제부턴 개인 토큰을 사용해야 한다고 한다.
메세지에 뜨는 링크를 따라가면 토큰을 발급하는 과정을 쉽게 따라할 수 있다.
그런데 기존에 커밋만해두고 푸쉬해두지 않은 리파지토리가 있는데 어쨌거나 이 커밋부분을 다 푸쉬해야 하는 상황.
기존 https방식으로 클론된 리파지토리를 ssh인증으로 변경해야 했다.
1. remote 브랜치 연결
$ git remote -v
https 주소로 연결되어있는 원격 저장소를 ssh로 바꿔주어야함.
해당 저장소의 ssh주소는 깃허브의 해당 리파지토리로 들어가면 확인 가능
이후 이 주소를 이용하여 로컬 저장소와 연결해줌.
$ git remote set-url origin git@github:사용자명/저장소명.git
성공했다면 아무런 메세지가 뜨지 않음. remote -v로 다시 확인해 보면 주소가 바뀌어있다.
이 상태로 push를 하면
안됨
ssh 인증키를 설정해 주어야한다.
2. ssh 인증키 발급
$ ssh-keygen
터미널을 열어 위 명령어로 키를 발급한다.
키가 저장될 경로를 선택 할 수 있는데 그냥 엔터를 계속 치면 디폴트 주소에 저장된다.
키가 저장된 파일을 열어보면 키가 출력된다.
3. github에 ssh키 설정.
settings -> SSH and GPG keys탭으로 이동
new SSH key 버튼을 클릭.
Title은 본인이 알아서 설정하면 되고
Key에는 아까 터미널에서 확인했던 키를 붙여넣기 해 주면 된다.
그럼 이렇게 새로운 키가 생성되어있음.
이후 다시 push하니 문제 없이 성공하였다.