[GIT] 브랜치 생성

2022. 8. 2. 18:56GIT

깃은 기본적으로 master 브랜치를 하나 가지고 있다.

그리고 브랜치는 HEAD 포인터를 가지고 있다.

 

저장소 생성 및 초기화

exercise 새 폴더를 깃 초기화 진행

현재 브랜치가 master라는 것을 확인 할 수 있다.

현재 브랜치의 작업 위치를 쉽게 알 수 있다.

 

기본 브랜치

모든 커밋과 이력은 브랜치에 기록된다.

깃은 최소 1 개 이상의 브랜치가 필요하다.

따라서 저장소를 처음 초기화하면 master 브랜치 하나가 자동으로 생성된다.

첫 번째 커밋은 master 브랜치에서 시작한다.

브랜치 작업 위치 확인

On branch master 메시지를 보면 현재 작업하는 브랜치 위치가 master라는 것을 알 수 있다.

또는 브랜치 목록을 볼 수 있는 명령어가 있다.

 

$ git branch

브랜치 목록을 보여준다.

master 브랜치 하나 있을 때 출력이 안되는데 왜 안되는지 모르겠다.

 

브랜치 생성

브랜치는 포인터

브랜치를 생성한다는 것은 현재 HEAD가 가리키는 커밋을 가리키는 포인터를 말한다.

새로 만든 브랜치로 이동하여 커밋을 하면 브랜치가 가리키는 커밋을 부모 커밋으로 하는 커밋 객체를 생성하는 것이다.

그리고 브랜치는 생성된 커밋을 가리키는 것이다.

 

브랜치를 생성한다? → 브랜치 포인터를 생성하는 것

브랜치 포인터는 지금 작업하고 있던 마지막 커밋을 가리킨다. (by HEAD)

※ HEAD

현재 작업중인 브랜치를 가리키는 포인터

 

처음 생성되는 기본 matser 브랜치 외의 브랜치는 사용자가 직접 branch 명령어를 입력하여 생성해야 한다.

브랜치는 개발 분기점을 의미하며 각 브랜치를 구분하려면 브랜치별로 이름을 지정해야 한다.

$ git branch 브랜치이름 커밋ID

 

branch 명령어 뒤에 브랜치 이름을 인자 값으로 추가한다. 브랜치 이름만 입력하면 현재 HEAD 포인터를 기준으로 새로운 브랜치를 생성한다.

직접 커밋 ID 인자 값을 지정하면 지정한 커밋ID를 기준으로 브랜치를 생성한다.

footer 브랜치 생성 후 브랜치 목록 확인

별표 표시는 현재 브랜치라는 의미다.

 

브랜치 이름

브랜치 이름을 지을 때 사전에 예약된 명칭은 없다.

깃 플로에 정의한 브랜치 이름을 적용하는 것도 좋은 방법이다.

 

브랜치 이름은 슬래시(/)를 사용하여 계층적인 구조로 만들어서 사용할 수도 있다.

작성 규칙

기호(-)로 시작할 수 없다.

마침표(.)로 시작할 수 없다.

연속적인 마침표(..) 포함하지 않는다.

빈칸, 공백 문자, 물결(~), 캐럿(^), 물음표(?), 별표(*), 대괄호([ ]) 등은 포함할 수 없다.

아스키 제어 문자는 포함할 수 없다.

 

브랜치 이름은 중복 허용하지 않는다.

 

※ 깃 플로

유지 보수를 하려고 다수의 브랜치를 생성하여 관리하는 방법이다.

 

소스트리 브랜치

소스트리 왼쪽에 브랜치 탭에 footer 브랜치가 보인다.

브랜치 목록

소스트리에서 브랜치 생성하는 것은 쉽다.

브랜치 생성할 커밋을 마우스 우클릭 - 브랜치 누르면 된다.

브랜치 메뉴 선택

브랜치 이름 기입하고

커밋 체크란에 작업 사본 부모는 HEAD 기준으로 브랜치 생성할 때 쓰고

명시된 커밋은 해당 커밋 기준으로 브랜치 생성할 때 쓴다.

브랜치 생성

 

728x90

'GIT' 카테고리의 다른 글

[GIT] 브랜치 이동  (0) 2022.08.02
[GIT] 브랜치 확인  (0) 2022.08.02
[GIT] 새 작업하기  (0) 2022.08.02
[GIT] 충돌 방지를 위한 최신화  (0) 2022.08.02
[GIT] 수동으로 내려받기  (0) 2022.08.02