Git Orphan Branch 생성

옥영진·2020년 8월 21일
1

Orphan Branch(고아 브랜치)란?

고아 브랜치는 하나의 git repository에서 다른 브랜치나 커밋으로부터 단절된 새로운 history를 가지는 브랜치를 말한다. 다른 브랜치와 독립적으로 운영할 수 있기 때문에 설정 파일이나, 다른 프로젝트를 생성하기보다는 하나의 프로젝트에서 진행하고 싶을 때 사용하면 유용하다.

Git Repository Clone


테스트용으로 만든 repository를 clone하였다. 그 후, 아래 명령어로 해당 repository에 존재하는 branch 목록을 조회하면 master branch만 존재한다는 것을 알 수 있다.

git branch

Orphan Branch 생성

동일한 repository이지만 master 브랜치와는 독립적인 브랜치를 생성하기 위해 아래 명령어를 입력한다.

git checkout --orphan orphan_test

생성하고 나면 기존에 존재하던 파일들은 모두 Staged 상태가 되어 있음을 알 수 있다.

아래 명령어를 통해 해당 디렉토리 내에 있는 모든 파일들을 제거한다.

git rm --cached -r .
rm -rf ./*

이렇게 되면 하나의 repository에 독립적인 2개의 브랜치가 생성된 상태가 된 것이다. 하지만 아직 remote repository에는 브랜치가 생성되지 않았기 대문에 아래 명령어로 remote에도 local과 동일한 브랜치를 생성해주도록 한다.

git push origin orphan_test

성공적으로 push가 완료되면 github에서 branch가 생성되어 있음을 확인할 수 있다.

생성한 브랜치 가져오기

원격 repository에 생성한 브랜치를 새로 작업 디렉토리로 가져와보겠다.
작업 디렉토리를 새로 생성해 git 저장소를 생성한다.

mkdir workspace
cd workspace
git init

그 후, 원격 repository를 추가한다. git remote -v 명령어를 입력하면 repository 목록을 출력한다.

git remote add origin [git 주소]
git remote -v

원격 repository에 있는 데이터를 fetch 한다.

git fetch origin

데이터를 가져오고나서 브랜치 목록을 확인하면 위에서 생성했던 고아 브랜치가 보일 것이다. 이 브랜치로 전환한다. 그러면 해당 브랜치에서 작업을 할 수 있게 된다.

git branch -r
git checkout [브랜치 이름]
profile
안녕하세요 함께 공부합시다

0개의 댓글