TIL 21.07.06

Jaemin Jung·2021년 7월 6일
0

Today I Learned

목록 보기
52/62
post-thumbnail

오늘한일

확실히 프로젝트에 가까워지고 있다는것이 느껴진다.
슬슬 프로젝트를 할거니 연습할 시간을 주는것같다.
배운 내용은 매우 간단하였다.
그래서 이해하지 못한 부분들을 다시 공부하였다.

Achievement goals

  • Git 브랜치의 개념을 이해할 수 있다.
  • Git 으로 협업하며 브랜치를 나누는 이유를 이해할 수 있다.
  • Git 으로 프로젝트를 관리하며 브랜치를 생성, 전환, 병합할 수 있다.

브랜치

브랜치란 독립적으로 어떤 작업을 진행하기 위한 개념이다.
브랜치 기능을 활용하면, 코드를 통째로 복사한 후 원래 코드가 변경될 우려 없이 독립적으로 개발 가능

브랜치의 장점

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

여러 명이서 동시에 작업을 할 때에 다른 사람의 작업에 영향을 주거나 받지 않도록 자신의 작업 전용 브랜치를 만든다.

작업이 끝난 브랜치는 통합 브랜치에서 병합해서 변경 사항을 적용

통합 브랜치

Github Repository를 생성하게 되면 기본적으로 main 브랜치가 생성 되는데

피처 브랜치

기능 추가, 버그 수정과 같이 단위 작업을 위한 브랜치

명령어

새로운 브랜치 생성
$ 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

기본적으로 개발을 진행하는 과정에서는 main 브랜치가 아닌 dev 브랜치를 하나 만들어서 작업하는 경우가 많음
$ git checkout -b dev 를 통해 생성 이후 git push origin dev
$ git switch -c dev도 가능

새로 병합하려면 병합할 브랜치로 위치를 옮겨야함

병합할 브랜치에서 mertge dev 입력

프로젝트를 진행하는 전체 흐름

  1. Local에서 새로운 브랜치를 생성하고 작업이 끝나면 Remote Repository 로 Push

  2. Project Upstream Repository에 반영(merge)될 수 있도록 Pull Request

  3. 작업하던 중간에 Remote upstream 에 업데이트가 생긴다면 Local 로 pull

참고사이트

https://backlog.com/git-tutorial/kr/stepup/stepup7_5.html
https://backlog.com/git-tutorial/kr/stepup/stepup7_5.html

profile
내가 보려고 쓰는 블로그

0개의 댓글