Git | GitLab

[Git] branch 생성/삭제

비번변경 2022. 8. 13. 23:07

branch

여러 사람이 동일한 소스 코드를 공유하여 다룰 때 같은 소스 코드를 기반으로 서로 다른 작업을 하기 위한 기능.

독립적인 저장소 내에서 작업을 진행할 수 있다. 즉, 다른 브랜치에 영향을 받지 않기 때문에 한 개발자가 기능을 추가하는 동시에 다른 개발자가 버그를 수정할 수 있다.

git branch

저장소를 처음 생성하면 기본적으로 master 또는 main이라는 이름의 저장소가 생성된다.

이 글의 내용 일부는 2022.07.07 - [Git] 원격 브랜치 가져오기와 중복된다.

 

 

branch 목록 확인

git branch
# -r : --remotes. 원격지 브랜치 목록을 보여준다.
# -a : --all. 원격지 브랜치 목록과 로컬 브랜치 목록을 모두 보여준다.
# -vv : 트래킹 브랜치 설정을 보여준다.

git branch

 

 

branch 생성

branch 명령어 뒤에 생성할 branch 이름을 지정한다.

git branch <BRANCH_NAME>

# 예시
git branch b20220801

branch 생성

branch 명령은 생성만 할 뿐, 사용 branch를 변경하지 않는다.

 

 

branch 생성과 동시에 전환

로컬 저장소에서 사용할 branch를 전환하는 checkout 명령을 -b 옵션을 주어 실행하면, branch를 생성하면서 사용 branch를 전환한다.

git checkout -b <BRANCH_NAME>

# 예시
git checkout -b b20220802

git checkout -b &lt;BRANCH_NAME&gt;

신규 branch는 branch 생성을 실행한 branch 내용을 기반으로 생성된다.

 

 

베이스 branch 지정하여 branch 생성과 동시에 전환

git checkout -b <BRANCH_NAME> <BASE_BRANCH_NAME>

git checkout -b &lt;BRANCH_NAME&gt; &lt;BASE_BRANCH_NAME&gt;

b20220802의 README.md는 # branch_test라는 행만이 존재한다.

그러나 main을 기반으로 생성한 b20220803의 README.md는 # branch_test \n git checkout이라는 내용을 포함한다. main의 README.md와 동일하다.

 

 

branch 삭제

업스트림 branch에 병합되어 있거나, --track.--set-upstream-to 설정이 되어있지 않아야 일반 삭제가 가능하다.

git branch -d <BRANCH_NAME>
# -D : --delete
# -d : --delete --force. 브랜치 강제 삭제.

# 예시
git branch -D b20220801

branch 삭제

 

 

참고 문서

[TIL] 항해일지 66일차

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

3.1 Git 브랜치 - 브랜치란 무엇인가

728x90