[GIT] 새 작업하기

2022. 8. 2. 18:41GIT

브랜치 작업

보통 새로운 기능을 추가하거나 많은 변경이 예상될 때 작업 폴더 전체를 복사했다.

안정적인 기존 코드는 남겨 두고 복제된 작업 폴더에서 실험적인 작업들을 하기 위해 코드를 분리한다.

커밋은 파일의 수정 이력을 관리하는데 사용한다면

브랜치는 프로젝트를 독립적으로 관리하는데 사용한다.

잦은 버그 수정과 새로운 기능 구현을 위해 작업 폴더를 복사하는 것은 프로젝트 유지 관리 측면에서 좋지 못하다.

브랜치를 이용하면 원본을 기반으로 새로운 사본을 만들어 기존 코드와 분리해서 작업을 할 수 있다.

 

브랜치 특징

기존 폴더를 복제하는 것과 다르게 가상 폴더를 사용하여 개발 작업을 구분한다.

 

가상폴더

브랜치는 작업 폴더를 실제로 복사하지 않고 가상 폴더를 만든다.

외부적으로는 물리적인 파일 하나만 있는 것이다.

브랜치로 생성된 가상 폴더는 빠르게 공간 이동이 가능하다.

개발자는 가상 폴더인 브랜치를 이동하면서 프로젝트를 수행할 수 있다.

 

독립적인 동작

브랜치를 이용하면 원본 폴더와 분리하여 독립적으로 개발 작업을 수행할 수 있다.

분리된 브랜치에서 소스 코드를 수정한 후 원본 코드에 병합하는 명령만 실행하면 쉽게 병합 할 수 있다.

브랜치는 규모가 큰 코드 수정이나 병합을 처리할 때 유용하다.

 

빠른 동작

다른 VCS에서 브랜치를 생성할 때 내부 파일 전체를 복사하여 브랜치 생성 시간이 꽤 걸린다고 한다.

깃에서는 가볍고 브랜치 전환이 빠르다.

깃은 Blob 개념을 도입하여 내부를 구조화한다.

깃은 브랜치를 변경할 때 포인터를 이동하여 빠르게 전환한다.

브랜치 명령을 사용하면 내부적으로 커밋을 하나 생성하여 브랜치로 할당한다.

깃은 해시 파일 하나만 만들면 되기 때문에 브랜치를 빠르게 생성할 수 있다.

 

※ Blob

포인트와 유사한 객체이다.

 

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