본문 바로가기

Coding/git

Github 비밀번호 입력 없이 pull/push (ssh key 설정)

GitHub에 pull, push를 할 때 매번 패스워드를 물어보는데 ssh key를 통해 이 과정을 생략할 수 있다.

 

본인은 윈도우 WSL2 환경이다.

1. SSH key 파일 생성

- 기존 생성해놓은 키가 있다면 .pub 파일 등과 같은 키파일이 있고 다음 명령어를 통해 확인하자

> ls -al ~/.ssh
ls: cannot access '/home/user/.ssh': No such file or directory

 

- ~/.ssh 디렉토리가 없는경우 아래와 같이 생성한다

> mkdir ~/.ssh
> chmod 700 ~/.ssh
> cd ~/.ssh

 

- ssh key 생성하기 (메일에는 본인 github 계정에 등록한 이메일 주소)

  - -t rsa는 rsa라는 암호화 방식으로 키 생성

  - SSH키는 키 크기가 2048bits 또는 4096bits인 RSA 키여야 한다

> ssh-keygen -t rsa -b 4096 -C "yourEmail@example.com"

- 이후 나오는 설정에 키 생성될때까지 계속 엔터 (자동 로그인 하려면)

 

- ssh-agent 실행 여부 확인

  - "Agent pid xxxx' 같은 문장 출력되면 정상 실행중

> eval "$(ssh-agent -s)"
Agent pid 43

2. GitHub에 공개키(id_rsa.pub) 등록

- GitHub 로그인

- settings 클릭

- SSH and GPG keys > New SSH Key 클릭

- SSH 공개키 등록

Title : 사용자 지정 키이름 (자율적으로 적으면 됨)
Key : 공개 키 내용

확인방법 : cat ~/.ssh/id_rsa.pub
입력한 후 해당 출력 내용 복사해서 key에 붙여넣기

- 이제 GitHub에서 https가 아닌 ssh로 repo와 연결하면, 비밀번호가 필요없다!

- 이미 https로 연결된 repo는, local에서 remote를 지우고

git remote remove origin

origin을 ssh로 새로 정의해준다

git remote add origin git@github.com:[계정명]/[저장소명].git

 


- 출처: https://goddaehee.tistory.com/254 [갓대희의 작은공간]