22.05.16 (월) git 초기 설정 및 ssh

Southbig·2022년 5월 16일
0

git 환경설정

$ git config --global user.name "나의 사용자 이름"
$ git config --global user.email "내 이메일 주소"

  • --global 옵션으로 설정하면, 사용자 홈에 저장되므로 git을 설정할 때 처음에 단 한 번만 입력해도 된다
    나중에 github의 사용자 이름이나 이메일을 변경한다면, 이 명령어를 다시 입력해야 한다
  • 만약 여러 프로젝트를 진행하고 있어서, 프로젝트마다 다른 사용자 이름과 이메일 주소를 사용하고 싶으면 --global 옵션을 빼고 명령을 실행할 수 있다

에디터

Git에서 커밋 메시지를 기록할 때, 특히 merge commit 확인 메시지가 나올 때 텍스트 에디터가 열린다
기본값으로 텍스트 에디터 vi가 열리는데, vi 에 익숙하지 않다면, nano로 변경하는 편이 좋다

git 최초 설정

ssh 키 생성

ssh는 Secure shell의 줄임말(Secure SHell)로, 보안이 강화된 shell 접속을 뜻한다

CLI 환경(터미널)에서 다른 PC에 접속하거나 요청할 때 사용하며, 비대칭키를 이용해 사용자를 인증한다

ssh 키는 비대칭키로 구성되며, 그 이름에서 유추할 수 있듯이 두 개의 키가 서로 대칭이 되지 않는 형태로 존재한다

다음의 명령어를 프롬프트에 입력하고, ssh 키 페어(쌍)을 생성한다
명령어를 입력 후 Enter 키를 몇 번 입력하면, ssh 키 페어가 생성된다

ssh-keygen

ssh-keygen 명령어는 경로 ~/.ssh./ 에 두 파일 id_rsa 와 id_rsa.pub 를 생성한다

이 두 파일은 ssh 키 페어라고 하며, 이 중 id_rsa.pub는 누구에게나 공개해도 되는 공개키(Public Key) 라고 한다

그리고 id_rsa는 공개되면 안 되고 나만 보관하고 있어야 하는 키라고 하여 개인키(Private Key) 또는 비밀키(Secret Key) 라고 한다

SSH 키 페어를 생성하였으므로, 생성된 키 페어 중 공개키를 복사하여 gitub에 등록한다

공개키(Public Key) 복사

다음의 명령어를 프롬프트에 입력하여, 공개키를 복사한다

cat ~/.ssh/id_rsa.pub

github에 공개키 등록

초록색 code 부분의 SSH와

다음의 명령어를 프롬프트에 입력하고, 정상적으로 동작하는지 확인

git clone git@github.com:codestates/im-sprint-simple-git-workflow.git

  • ls 를 입력해 정상적으로 폴더가 생성된 걸 확인했다면 정상

  • 만약 정상적으로 동작하지 않는 경우

  1. Github - Settings - SSH keys 에 등록한 공개키 삭제
  2. 프롬프트에 cat ~/.ssh/id_rsa.pub 명령어를 입력하여 나타나는 공개키 복사
  3. Github - Settings - SSH keys 에서 New SSH key 버튼 클릭
  4. Title을 입력하고, 복사한 공개키를 Key에 붙여 넣고 Enter 키를 입력해 한 줄을 추가(개행)
  5. Add SSH key 버튼을 클릭하고, 승인하여 공개키를 등록

CLI 사용을 위한 인증 과정

1. 먼저 GitHub CLI를 설치

 brew install gh

여기서 gh가 github의 약자이지 않을까 ..

$ curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg 또는 sudo gpg --dearmor -o /usr/share/keyrings/githubcli-archive-keyring.gpg
$ echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" 또는 sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null
$ sudo apt update
$ sudo apt install gh

gpg: failed to start the dirmngr '/usr/bin/dirmngr': No such file or directory 에러가 난다면?
dirmngr 패키지가 필요, sudo apt-get install dirmngr 를 통해 설치 후 위 과정을 다시 시도

2. gh auth login 명령어를 통해 로그인을 시도합니다. 화살표 키를 이용해 다음 항목들을 선택 후 Enter를 누릅니다.

? What accout do you want to log into? GitHub.com
? What is your preferred protocol for Git Operations? HTTPS
? Authenticate Git with your GitHub credentials? Yes
? How would you like to authenticate GitHub CLI? Login with a web browser

과정 중 실수가 발생했다면, Ctrl + C 를 눌러 중단 후 재 실행

3. Login with a web browser 옵션을 선택하면, 다음과 같이 one-time code 가 등장한다
Enter 키를 누르면, Device Activation을 가능하게 하는 창이 등장한다

위 화면을 실수로 닫았다면, https://github.com/login/device 에 접속하면, 위 화면이 등장

4. 모든 인증 과정이 성공적으로 끝나면, 터미널 화면에서도 Logged in as 사용자이름 과 같이 인증이 완료

profile
즐겁게 살자

0개의 댓글