230717 git & github 실전

나윤빈·2023년 7월 17일
0

TIL

목록 보기
21/55

📌 Git & Github의 차이

✔️ Git??

  • 내 컴퓨터에서 코드 관리하는 것이다.
  • 변경점을 기록하기 때문에 버전 관리 도구라고 할 수 있다.

✔️ Github??

  • 내 코드를 백업하기 위해 사용한다.
  • 협업 & 코드 공유를 위해 사용한다.
  • 원격 저장소(remote repository)라고 할 수 있다.

📌 Git 필수 명령어 간단 정리

1. git init

  • 프로젝트 폴더에서 git init 명령어를 입력한다.
  • <주의> Desktop에서 git init 명령어 입력하면 생기는 일 ➡️ git push 할 때 Desktop에 있는 모든 파일이 github에 올라간다.
  • 터미널에 ls -al 명령어를 입력하면 .git 이라는 폴더가 생긴 것을 확인할 수 있다.
  • .git 이라는 폴더에서 코드를 잘 관리한다.

2. git add

  • 저장할 파일을 지정하는 것
    ➡️ 변경/반영할 대상이 되는 파일을 무대(stage)로 올려놓은 과정이다.

3. git commit

  • 저장하는 명령어
    ➡️ 무대(stage)로 올라간 파일에 대해 로컬 저장소(.git)에 저장하는 과정이다.

4. git status

  • 코드 변경 전 & 후, add 및 commit 후에 git status를 입력하면, 현재 어떤 파일에 변경점이 있는지 표시된다.

5. git log

  • 저장한 내역을 확인하는 명령어이다.

6. git branch

  • 복사본을 만들어준다.
  • 내가 만든 브랜치 목록을 볼 수 있다.

7. git switch or git checkout

  • git switch <브랜치명> 혹은 git checkout <브랜치명>으로 브랜치를 이동한다.

8. git clone

  • 협업의 시작을 위해 다른 사람이 올린 github 에 있는 코드를 가져올 수 있다.

9. git push

  • 로컬저장소(내 컴퓨터)에서 commit한 내용을 원격저장소(github)로 백업한다.

10. git pull

  • 원격저장소(github)에 있는 코드를 로컬저장소(내 컴퓨터)로 가져온다.

📌 Github으로 협업하기

main brach

  • 최종 배포용 코드
  • 에러는 절대 no!!

dev brach

  • 배포 전 최종 확인용 코드
  • 기능 브랜치를 이곳에 merge

feat brach

  • 기능을 개발하는 브랜치
  • 기능 개발 완료 후 dev merge

1. 팀 대표자가 초기 코드 생성 및 github에 코드 올리기 (main & dev)

main

git init
git add .
git commit -m "프로젝트 초기세팅"

git remote add origin <github 주소>
git branch -M main
git push -u origin main

dev

git branch dev
git switch dev
git push origin dev

2. github에서 dev 브랜치를 default 브랜치로 변경

3. 팀원들이 코드 다운받기 - git clone

git clone <github 주소>

// 빈 프로젝트 폴더를 이미 만들었다면?
git clone <github 주소> .

// 내 컴퓨터에 dev를 기본 브랜치로 가져오고 싶다면? (github에서 default 브랜치 설정하지 않았을 때)
git clone -b dev <github 주소>

4. 맡은 기능에 따라 브랜치 생성하기

git branch <브랜치명>
git switch <브랜치명>

5. 맡은 기능에 따라 브랜치 생성하기

git add .
git commit -m "feat: OOO 기능 개발"
git push origin <브랜치명>

6. github에서 PR 생성 및 merge 가능 여부 확인

7. merge 전 내 브랜치에서 미리 코드 merge 해보기

git pull origin dev

8. 코드 실행 및 테스트 (conflict 발생 시 코드 수정 및 테스트)

yarn start

9. 코드 변경 사항 있을 경우 다시 push

git add .
git commit -m "fix: OOO 기능 충돌 해결"
git push origin <브랜치명>

10. github에서 dev로 merge (merge 전 PR 리뷰 및 approve 하기)

11. 로컬(내 컴퓨터)에서 dev 브랜치로 이동 후 최신 코드 받아오기

git switch dev
git pull origin dev
profile
프론트엔드 개발자를 꿈꾸는

3개의 댓글

comment-user-thumbnail
2023년 7월 17일

어 근데 아까 노션에서 본 내용같은데 이상하네 ..?

1개의 답글
comment-user-thumbnail
2023년 7월 18일

정보가 많아서 도움이 많이 됐습니다.

답글 달기