git branch

sunghun kim·2024년 8월 26일

[git]

목록 보기
4/10

출처: git기초 (코딩애플)


서론

commit 하면서 계속 코드를 짜다보면
새로운 기능을 추가하고 싶은 경우가 있습니다.

그럴 경우는 원본파일에 코드를 추가하고 commit 해도 되지만
코드를 잘못 입력해서 전에 짰던 프로그램이 작동하지 않을 수 있습니다.

걱정 없이 안전하게 새로운 기능을 추가하고 싶으면
프로젝트의 복사본을 만들어서 거기에 먼저 개발해보는 방법이 있습니다.


git branch

git을 사용한다면 git branch 기능을 이용하면 됩니다.
branch는 프로젝트 복사본 입니다.

예시


쇼핑몰을 만드는데 쿠폰 기능을 추가하려고 합니다
그래서 git branch coupon 을 터미널에 입력해서
브랜치 이름이 coupon 인 복제본을 만들 수 있고

git switch coupon 을 입력해서
coupon 브랜치로 이동할 수 있습니다.

coupon 브랜치에서 coupon 파일을 새로 만들고 commit 해봅니다.

그러고 git switch master(main) 를 해서 master 브랜치로 가보면
coupon 브랜치에서 파일을 만들었기 때문에
master 브랜치에서는 coupon 파일이 없는 것을 확인할 수 있습니다.


git log --oneline --all --grpah 를 입력해봅시다.
사진 설명을 입력하세요.
그럼 브랜치에 따라서 log가 나오는 것을 확인할 수 있습니다.
HEAD는 현 위치 입니다.


git merge

이제 coupon 브랜치를 다 작성해서
master 브랜치와 coupon 브랜치 내용을 합치고 싶습니다.
그 때 사용할 수 있는게 git merge 입니다.
방법은 master 브랜치인 상태에서 git merge coupon 을 입력하면 되는데

이와 같이 master 브랜치에서 app.txt 파일을 수정하고
coupon 브랜치에서 app.txt 파일을 수정했다고 하면 (같은 파일을 다른 브랜치에서 수정)
충돌(conflict)이 일어납니다.

초록색과 파란색이 서로 충돌했다는 표시입니다.

git 에디터를 쓰면
버튼을 누르기만 하면 해결 할 수도 있고
사진과 같이 원하는 코드만 남기고 add, commit 하면 해결완료입니다.

log를 보면 잘 합쳐졌음을 볼 수 있습니다.

profile
기죽지않기

0개의 댓글