TIL # 2022.03.27

kdobro_dev·2022년 3월 27일
0

TIL (Today I Learned)

목록 보기
46/56
post-thumbnail

오늘 배운 내용

개발로 취업을 하고 협업 해서 일을 하려면 Git을 사용할 줄 알아야한다는 말을 많이 들었다. 예전부터 Git에 대해 한번씩 공부는 했었지만 아직 다른 사람들과 협업을 하기위해 사용했던 적은 없다. 그래서 오늘은 브랜치에 대해 알아보려고 한다.

브랜치 (branch)

  • 브랜치란 독립적으로 어떤 작업을 진행하기 위한 개념이다.
    개발을 하다 보면 한 페이지 안의 여러 기능을 따로 구현하기 위해, 코드를 여러 개로 복사해야 하는 일이 자주 생긴다.
    브랜치 기능을 활용하면, 코드를 통째로 복사한 후 원래 코드가 변경될 우려 없이 독립적으로 개발할 수 있다.
    다시 말해, 각각의 브랜치는 다른 브랜치의 영향을 받지 않기 때문에, 여러 작업을 동시에 진행할 수 있다.

브랜치의 장점

  • 한 소스코드에서 동시에 다양한 작업을 할 수 있게 해준다.
  • 소스코드의 한 시점과 동일한 상태를 만들고, 브랜치를 넘나들며 작업을 수행할 수 있다.
  • 각각의 브랜치에서 생긴 변화가 다른 브랜치에 영향을 주지 않고 독립적으로 코딩을 진행할 수 있다.

브랜치의 종류

통합 브랜치 (Integration Branch)

  • 배포될 소스 코드가 기록되는 브랜치.
    Github Repository를 생성하게 되면 기본적으로 main 브랜치가 생긴다. (기존 Repository의 경우 master로 되어 있는 곳도 많다.)
    해당 프로젝트의 모든 기능이 정상적으로 작동하는 상태의 소스코드가 담겨 있다.

피처 브랜치 (Feature Branch)

  • 기능 추가, 버그 수정과 같이 단위 작업을 위한 브랜치.
    통합 브랜치로부터 만들어내며, 피처 브랜치에서 하나의 작업이 완료가 되면 다시 통합 브랜치에 병합하는 방식으로 진행된다. 토픽 브랜치라고도 한다.

브랜치 명령어

새로운 브랜치 생성

  • $ git branch 새로운 브랜치 이름

새로운 브랜치 생성 후 해당 브랜치로 전환

  • $ git switch -c 새로운 브랜치 이름
  • $ git checkout -b 새로운 브랜치 이름

브랜치 목록 확인

  • $ git branch

브랜치 목록과 각 브랜치의 최근 커밋 확인

  • $ git branch -v

브랜치 삭제

  • $ git branch -d 삭제할 브랜치 이름
  • $ git branch -D 해당 명령어는 병합하지 않은 브랜치를 강제 삭제하는 방법.

브랜치 전환

  • $ git switch 브랜치 이름
  • $ git checkout 브랜치 이름

브랜치 병합

master 브랜치로 dev 브랜치를 병합할 때 (master ← dev)

  • $ git checkout master
  • $ git merge dev

로그에 모든 브랜치를 그래프로 표현

  • $ git log --branches --graph --decorate
    아직 commit 하지 않은 작업을 스택에 임시로 저장
  • $ git stash
profile
do your best at any moment

0개의 댓글