Tools/Git
[Git] branch
SdardewValley
2022. 1. 31. 18:00
반응형
branch는 프로젝트를 독립적으로 관리하는데 도움을 준다. branch를 통해서 기존의 코드와 분리하여 작업을 진행할 수 있다.
branch의 특징
- 가상 폴더: git은 작업 폴더를 복사하는 것이 아닌 가상 폴더를 생성한다.
- 독립적인 동작: 원본 폴더와 독립적으로 작업을 할 수 있다.
- 빠른 동작: blob으로 내부를 구조화 하여 브랜치 변경이 빠르다.
blob은 파일의 내용이 저장되는 object이다.
브랜치 명령어를 사용하면 commit이 하나 생성되고 branch로 할당한다. 이런 해시 파일을 생성하여 브랜치가 더 빠르게 생성된다.
$ git branch
브랜치 목록을 확인할 수 있다. 현재 브랜치 앞에는 *이 붙는다.
branch 생성
$ git branch 브랜치명 commitID
브랜치를 생성할 때는 위의 명령어를 통해서 생성할 수 있다. commitID는 지정한 commitID를 기준으로 branch를 생성해준다. 만약 이 commitID가 생략되었을 경우에는 HEAD 포인터를 기준으로 브랜치가 생성된다.
branch 명명 규칙
- 기호로 시작하지 않는다
- /를 사용하여 계층 구조를 표현한다
- 연속적인 마침표 (..)를 포함할 수 없다
- 아스키제어 문자는 포함할 수 없다
- 동일한 이름의 브랜치는 생성할 수 없다
branch 이동
$ git checkout 브랜치명
브랜치를 이동할 때는 checkout 명령어와 함께 이동할 브랜치의 이름을 뒤에 붙여주면 된다. 브랜치 명이 "-"인 경우에는 이전 브랜치로 이동을 한다.
이동시의 동작
- 기존의 워킹 디렉토리를 정리한다
- HEAD 포인터(브랜치의 마지막 commit을 가리킴)을 이동시킨다