Git, GitHub - ID와 Token없이 git 사용하기(SSH)


1. ssh key 생성

$ ssh-keyget -t ed25519 -C "이메일 주소"

사진1) ssh key 생성


기본 경로값은 "~/.ssh/id_ed25519"를 사용한다.


2. ssh 에이전트 실행 및 키 등록

$ eval "$(ssh-agent -s)"

$ ssh-add ~/.ssh/id_ed25519

사진2) 공개키 조회

위 2개의 터미널을 "~/.bashrc" 또는 "~/.zshrc"에 추가해서 재부팅 후에도 키가 등록되게 할수 있다.

3. 공개키를 GitHub에 등록

$ cat ~/.ssh/id_ed25519.pub

사진3) public key


GitHub에 들어가서 Setting을 클릭한다.

사진4)


Access 설정에서 "SSH and GPG keys"을 클릭한다.

사진5) SSH and GPG keys 선택


"New SSH Key"를 선택해서 터미널에서 복사한(사진3) public key를 추가한다.

사진6) public key를 넣기

생성이 정상적으로 됬으면 아래와 같이 "Authentication keys"가 추가된 것을 확인할수 있다. 다만 한번도 사용이 안되어 있어서 "Never used - Read/write"로 되어있다.

사진7) Authentication key 추가 모습

4. ssh config 설정

.ssh 폴더안에 config파일을 생성해서 아래와 같은 내용을 추가한다.


Host github.com

  HostName github.com

  User git

  IdentityFile ~/.ssh/id_ed25519

  IdentitiesOnly yes


사진8) config 저장모습

이후에 권한을 위해서 아래 터미널을 실행

$ chmod 600 ~/.ssh/config

제대로 설정됬는지 아래 터미널을 실행할수 있다.

$ ssh -T git@github.com

사지9) 테스트 응답값



5. 테스트

이제 private Repository 하나를 token없이 clone할수 있다.

사진10) Clone을 위해 SSH링크 복사


기존에 링크로 clone할때는 'HTTPS'를 사용했지만 이제 'SSH'을 이용해서 할수 있다.

사진11) SSH링크로 Repository Clone

SSH Key가 언제 마지막으로 사용됬는지와 필요시 GitHub에서 해제도 가능합니다.



댓글

이 블로그의 인기 게시물

Lesson 12_1 프로퍼티 노드(Property Node)

DAQ로 전압 측정하기-2

Nest JS URL에 있는 쿼리(Query) 읽기