깃을 사용하다 다음과 같은 상황을 마주했다고 생각해보자.
실험적인 기능을 사용하기 위해 여러 파일 내용을 변경하고 파일을 추가, 삭제를 해야 한다.
기능 역시 사용하는데 필요한 파일의 내용이 조금씩 달라서 두 기능을 동시에 사용할 수는 없다.
하지만 두 기능 모두 사용해보고 더 나은 기능을 추가하고 싶다.
이런 문제를 겪고 있다면 branch
를 사용해야 한다.
branch
는 버전의 분기를 제공하는 기능이다. 깃을 초기화하면 기본적으로 생성되는 main
이라는 분기 안에서 버전관리가 이루어지게 된다.
이제 새로운 branch
를 만든다면 하나의 디렉토리 안에서 분기 이동만으로 다른 환경을 만드는 것이 가능한 것이다.
비유하자면 같은 공간 안에서 평행세계로 이동해 역사를 바꿀 수 있게 해주는 기능이라고 생각하면 되겠다.