#15 Git - Branch

김현준·2022년 12월 23일
0

GIT

목록 보기
15/41
post-custom-banner

이번에는 직접 branch 를 만들어 보는 시간을 가져보도록 하겠습니다.

기존에 사용하던 ~/Documents/git_1 경로로 이동해줍니다.

이후 vim f5.txt 를 통해 파일을 만들어 줍니다.

a 라는 문구만 넣고 저장해줍시다.

늘 하던대로 f5.txt 파일을 add 해줍시다.

-m 명령을 통해서 커밋메세지를 바로 작성해줍시다.
처음이므로 11 로 설정하였습니다.

이후 다시 f5.txt 파일을 다음과 같이 수정해줍시다.

이후 커밋메세지는 22 로 하겠습니다.
addcommit 를 동시에 하기 위해서 -am 명령을 사용했습니다.
하지만 이때 주의 해야할점은 버전관리가 시작되지 않은 파일 , 즉 한번도 add 하지 않은 파일은 -a 명령어가 적용되지 않습니다.

git log 를 통해 현재까지 commit 의 내용들을 볼 수 있습니다.

이제 git branch 를 해보겠습니다.
이때 *master 이라는 문구가 따는데 이는 현재 본인이 master 이라는 branch 를 사용하고 있다는 의미입니다. 사실 git은 사용하는 순간부터 기본적으로 master 를 사용하고있습니다.

처음에는 exp(experiment) 로 만들어 보겠습니다.
이후 다시 git branch 를 하면 정상적으로 추가된 것을 확인할 수 있습니다.

git checkout exp 를 하면 exp 로 바꿀수 있습니다.
git branch 를 통해 정상적으로 이동된것을 확인 할 수 있습니다.

이제 여기서 f5.txt 파일의 내용을 ab 에서 abc 로 바꿔보겠습니다.

branchexp 인 상태에서 addcommit 을 해줍니다.

이때 branchexp 인 상태에서 git log 를 하면 커밋메세지가 정상적으로 써진것을 확인 할 수 있습니다.

하지만 이때 git checkout master 을 하고 git log 를 명령어를 쓰면 특별한 일이 발생합니다.
이전에 썼던 33 이라는 커밋메세지가 보이질 않습니다.

또한 branchmaster 인지 exp 인지에 따라 파일의 내용도 다릅니다.

branch 상태에 따라 같은 파일이름이 존재하더라도 특정 branch 에서 파일의 내용을 수정할 수 있습니다.

이전에 본 이 그림과 아주 유사한 상황입니다.

그렇다면 branch 를 어디서 사용 할 수 있을까요?
원래의 소스코드를 바꾸지 않으면서 특정 고객만을 위한 기능을 추가할때가
가장 유용하게 쓸수있는 기능이 바로 branch 입니다.

몇가지 예를 들어보자면

  • 누군가의 요청으로 개발을 했는데 , 자신의 생각하기에 특정 부분이 필요없다고 느껴질 수 있습니다. 따라서 나중에 특정기능을 제거할 수 있는 상황이 존재할것을 대비해 분기( branch ) 해서 작업을 진행하는 경우

  • 개발을 열심히 하고 있는데 지금까지 개발한 것을 서버에 반영을 하고 테스트를 해서 문제점이 없는지 체크를 하는 경우 , 즉 메인을 위한 작업과 테스트를 위한 작업을 따로해야할 경우

이 외에도 여라가지 상황에서 branch 를 합니다.

오늘 내용은 여기까지지만 다음 내용을 공부하기전에 혼자서 branch 를 여러개 만들어보고 파일도 여러개 만들어 보고 checkout 도 스스로 해보는 연습을 해보고 다음내용을 공부해봅시다.

profile
울산대학교 IT융합학부 22학번
post-custom-banner

0개의 댓글