[Git][차원 넘나들기] branch 생성 및 변경 복습

mutexlocking·2022년 7월 5일
0

이번 장에서는 버전1 -> 버전2 -> 버전3 과 같은 프로젝트의 시점 관리가 아닌, 프로젝트의 차원 관리에 대해서 알아보자.

프로젝트의 차원이 여러개여야 할 상황은 크게 2가지로 정리할 수 있다.

1) 프로젝트의 용도가 달라, 프로젝트를 2개 이상의 모습으로 관리해야 할 경우
ex) 실 배포용, 테스트 서버용, 새로운 시도용

2) 여러 작업들을 각각 독립적으로 적용한 후, 하나로 병합할 경우
ex) 각 팀이 각각의 차원에서 신기능1, 신기능2, 신기능3을 추가한 후,
이를 메인 차원에서 병합할 경우
-> 이러면 개발이 완성된 신기능 먼저 적용시킬 수 있음. (즉 속도!!)

=> 결국 Git의 시간과 / 차원을 활용하면, 이 모든것을 하나의 프로젝트 폴더에서 수행할 수 있다.


이제 이 branch를 생성하고 다루는 명렁어를 알아보자.

<현재 시점에서 새로운 브랜치 생성>

  1. [현재 시점에서 특정이름의 브랜치 생성]
    git branch add-coach
  • add-coach 란 이름의 새로운 브랜치 생성
  • 주의할 점은, main브랜치의 현재 커밋 시점에서 부터 add-coach 브랜치가 파생되어 생긴다.
  • 이 브랜치에서는, 프로젝트에 coach라는 파일을 추가해 볼것

<내 로컬 프로젝트에 있는 모든 브랜치 목록 확인>

  1. [로컬 프로젝트의 모든 브랜치 목록 확인]
    git branch
  • 목록으로 나오는 브랜치들 중, *이 붙어있는 브랜치가, 현재 작업중인 브랜치

<특정 브랜치로, 현재 작업중인 브랜치 변경>

  1. [현재 작업중인 브랜치 변경]
    git switch add-coach
  • 현재 작업중인 브랜치가, add-coach 브랜치로 변경된다.

18.2. [새로운 브랜치를 생성과 동시에, 그 브랜치로 현재 작업중인 브랜치 변경]
git switch -c new-teams

  • new-teams 라는 브랜치를 , 현재 시점에서 생성함과 동시에
  • 현재 작업중인 브랜치를 new-teams 브랜치로 변경

<브랜치 삭제>

19.[브랜치 삭제]
git branch -d (삭제할 브랜치 명)

  • 주의할 점은, 현재 작업중인 브랜치는 삭제할 수 없음
  • 따라서 먼저 브랜치를 switch 한후, 삭제해야 함.

19.2 [강제 삭제]
git branch -D (삭제할 브랜치 명)

  • 다른브랜치에는 적용되지 않는 커밋이, 삭제할 브랜치에만 존재하는 경우,
  • 이 브랜치를 삭제하기 위해서는 대문자 D를 줘서, 강제 삭제!
  • 왜냐하면 어느 브랜치에도 반영되지 않은 커밋이 있는데도 , 이 브랜치를 삭제해 버리면 -> 그런 커밋까지 삭제되어 버리는 것이기 때문에, 기본적으로 -d 옵션의 삭제를 막는다.
  • 따라서 이럴 경우 -D 옵션을 줘서 강제 삭제를 해줘야 한다.

<브랜치 이름 변경>

  1. [브랜치 이름 변경]
    git branch -m (변경전 이름) (변경 후 이름)
  • 이때 m은 move를 의미한다

<모든 브랜치의 log 보기>

  1. [모든 브랜치의 전체 log 보기]
    git log --all --decorate --oneline --graph
  • 참고로 단순히 git log 만 하면, 현재 작업중인 브랜치의 로그만 볼 수 있음.
profile
개발자가 되고자 try 하는중

0개의 댓글