Git Branch
Git Branch?
독립적으로 어떤 작업을 진행하기 위한 개념
각각의 Branch는 다른 Branch의 영향을 받지 않음
Git Branch의 종류
메인 Branch : 배포할 수 있는 수준의 안정적인 Branch
토픽 Branch : 기능 추가나 버그 수정과 같은 단위 작업을 위한 Branch
Git Branch 생성
현재 Branch 확인
git branch
Branch 생성
git branch [브랜치명]
Branch 전환
git checkout [브랜치명]
Git Navigation
checkout은 git log로 확인한 snapshot을 넘나들때도 사용이 가능하다.
hash 값을 이용하여 과거의 파일 내용을 확인할 수 있다.
git checkout [snapshot hash]
(hash값은 git log --pretty=oneline으로 쉽게 확인할 수 있다)
Git Merge
Git Merge
new_branch의 작업을 끝마치고 master Branch와 병합할 때,
먼저 master Branch로 이동
git checkout master
new_branch와 병합
git merge new_branch
Merge된 Branch 목록
git branch --merged
Git Branch 삭제
사용을 마친 branch는 보통 삭제한다.
git branch -d [브랜치명]
Git Merge conflict
Merge conflict
Merge한 두 Branch에서 같은 파일을 변경했을 때 충돌이 발생한다.
git status 명령으로 어느 파일에서 충돌이 발생했는지 확인 가능하다.
Git Merge 충돌 해결
충돌이 일어난 파일을 열어보면 어느 Branch에서 각각 어떤 내용으로 수정되었는지 확인할 수 있다.
ex) master, new_branch 충돌
<<<<<<< HEAD
def master_javascript() :
'''
this file is master's javascript func
'''
if __name__ == '__main__' :
master_javascript()
=======
def perfect_time_check() :
'''
He is murdering time!
'''
if __name__ == '__main__' :
perfect_time_check()
>>>>>>> new_branch
충돌이 발생한 파일을 수정 후 다시 git add, git commit 과정을 거쳐 다시 merge 해준다.
'git' 카테고리의 다른 글
Git 원격 저장소 (0) | 2021.05.19 |
---|---|
Git 시작하기 (0) | 2021.05.19 |
Git이란? (0) | 2021.05.19 |
git bash 사용 시 복사, 붙여넣기 (0) | 2021.01.13 |
git add error (warning: LF will be replaced by CRLF) (0) | 2021.01.06 |