[노드, 리액트 기초 | node.js] #4. git 설치 및 ssh를 이용해 github와 연결

ppmyor·2022년 7월 5일
0

노드, 리액트 기초

목록 보기
4/26
post-thumbnail

항상 느끼지만 git은 마치.. 빙산의 일각과 같아서 git 설치, add, push는 SSAP가능~ 하지만 이제 심연을 들여다보면 어렵고 복잡해지는 것 같다(꼬였을 때 심장 떨림이란..). 해당 강의에서는 git 설치와 github연결에 대해 간단하게 다루고 있으므로 나도 다시 한 번 정리해볼겸 포스팅을 남긴다.

⚙️ Git 설치

  1. git 설치
git -v

우선 git이 설치되어있는지부터 살펴보자. 위의 명령어는 git의 버전을 확인하는 명령어인데 아래와 같이 버전이 뜬다면 이미 git이 설치되어 있으므로 생략해도 된다.

git version 2.37.0

  1. git 초기화
git init

이제 작업 할 디렉토리에서 git 초기화를 진행한다. VS Code 같은 경우에는 좌측에 리포지토리 초기화 등과 같은 버튼으로 쉽게 초기화를 진행할 수 있다.

  1. git의 상태보기
git status

이제 위의 명령어를 이용하여 git의 상태를 볼건데 해당 상태를 이해하려면 상태가 구조를 가지고 있는지 이해가 필요하다.

  • working directory
    아무 것도 하지 않은 상태를 말한다. 무언가 작업을 했고, 변경 사항이 있을 수 있으나 스테이징되어 있지 않은 상태이다. git status 입력 시 아래와 같이 친절하게 설명해준다.

커밋하도록 정하지 않은 변경 사항:
(무엇을 커밋할지 바꾸려면 "git add <파일>..."을 사용하십시오)
(use "git restore ..." to discard changes in working directory)
수정함: README.md
커밋할 변경 사항을 추가하지 않았습니다 ("git add" 및/또는 "git commit -a"를
사용하십시오)

  • Staging Area
git add

git add를 입력하면 staging area로 작업물들이 이동하게 된다. staging area는 git repository에 넣기 전 한 번 저장시켜주는 일종의 저장소 같은 개념인데 commit 시킬 작업물들에 대해 staging area에 올려둔다.

  • git repository에 올림(LOCAL)
git commit - m "commit message"

commit을 진행하게 되면 LOCAL단의 git repository에 올릴 수 있다. 보통은 여기서 그치는것이 아니라 github까지 올리는 것을 목표로 하기 때문에 더 나아가보자.

⚙️ SSH 설치

가비아에서는 SSH를 다음과 같이 설명하고 있다.

SSH는 Secure Shell의 줄임말로, 원격 호스트에 접속하기 위해 사용되는 보안 프로토콜입니다.

그러니까 결국은 컴퓨터와 git이 안전하게 통신하기 위해서 SSH를 설정하는 것이라 이해할 수 있다.

  1. ssh 설정 확인
ls -a ~/.ssh

위의 명령어를 입력했을 때 id-rsa 파일과 id-rsa.pub 파일이 있다면 ssh 설정이 되어있는 것이므로 뛰어넘어도 좋다.
없다면 해당 링크를 따라 설치하자.

  1. github에 ssh 등록
    설치했다면 github로 들어가서 아래의 루트를 따라 ssh를 등록하자.

    settings -> SSH and GPG keys -> new SSH key -> title 입력 -> 복사한 key 입력

  2. git repository 생성
    이제 LOCAL에서 작업한 작업물들을 github에 올리기 위해서 올릴 repository를 생성하자.

    repositories -> New -> repository name 입력(필수) -> repository에 관한 설명 작성(옵션) -> public 혹은 private 선택 -> Add a README file 체크 -> Create Repository

  3. git repository에 올림(REMOTE)
    대망의 마지막이다. LOCAL단에 올라온 것들을 REMOTE단으로 올려주자.

    https://github.com/ppmyor/study-node-react-basic.git

    우선 github에서 작업 할 repository에 들어간 후 Code버튼을 눌러 위와 같은 형태의 코드를 복사해주자.

    git remote add origin https://github.com/ppmyor/study-node-react-basic.git

    복사했다면 다시 돌아가서 작업중인 local 디렉토리에 위와 같은 명령어를 입력해주자. 주소 부분은 위에서 복사한 본인의 주소를 입력하면 된다.

  4. git branch 변경
    git의 메인 branch는 master인데 github의 메인 branch는 main이기 때문에 고대로 push 하려고 하면 error가 난다.

    git branch

    위의 명령어를 입력해 현재 branch를 확인하고 master 라면 아래의 명령어로 branch를 바꿔주자.

    git branch -m master main
  5. pull
    git은 push하기 전에 우선 pull 작업이 필요하다. 협업에서는 더더욱이 중요한데 내가 작업한 부분이 이미 누군가가 push한 작업물과 충돌이 날 수 있기 때문에 pull을 통해 현재 로컬 repository에 반영한 후 충돌이 없다면 push할 수 있도록 한다. 우리는 더욱이 github에 repository를 생성할 때 readMe.md 파일을 생성했기에 변경 사항이 있으므로 해당 작업이 필요하다.

    git pull origin main --allow-unrelated-histories
  6. push
    대망의 push다. push를 하게되면 Local repository의 작업물이 github repository로 올라가는 신세계를 볼 수 있다.

    git push -u origin main

이제 끝이다. 큰 걸음 했다.🥲👍

➕ 참고

따라하며 배우는 노드, 리액트 시리즈 - 기본 강의 를 공부하며 작성한 글입니다.
해당 링크에 막힐만한 부분이 잘 정리되어 있습니다.

profile
유영하는 개발자

0개의 댓글