git branch / git merge
2023. 2. 27. 11:22ㆍGIT
브랜치란 ?
- 커밋 사이를 가볍게 이동할 수 있는 '포인터'
- 다른 브랜치의 작업과 별개로 진행해서 '임시 작업'을 진행할 수 있다.
git branch [브런치명]
1. 현재 작업중인 커밋을 가르키는 브런치를 생성한다.
git commit -m "커밋메시지"
2. 하지만 head포인터는 기존 브런치인 main을 가르키고 있기 때문에 commit을 수행하면 브런치는 이전 커밋에 남아있게 된다.
git checkout [이동할 브런치명]
git commit -m "커밋메시지"
3. git checkout [브런치명] 을 통해 해당 브런치가 가르키는 커밋으로 이동한다.
** 이때 실제 파일에서도 물리적으로 변경되며 과거로 이동한다.
4. 다른 브런치와 합병 (merge)
git merge main
// 현재 head포인터가 가르키는 브런치가 test이기 때문에 다른 브런치를 선택해야 한다.
test에서 main을 지목하며 합병한다.
main이 가지고 있는 정보를 모두 가져온다.
실제로는 git commit이 바로 수행되지 않기 때문에
touch 1 -> git add . -> git commit -m "커밋메시지" 등의 과정을 거쳐야 한다.
실제 git bash 에서 진행사항을 확인하려면
git log --oneline --graph --all 로 확인하면 편하게 볼 수 있다.
'GIT' 카테고리의 다른 글
[GIT] git chekout --> Detached HEAD (커밋을 잃어버렸다.) (0) | 2023.03.12 |
---|---|
github flow (0) | 2023.03.03 |
git merge 충돌, 덮어쓰기 (0) | 2023.02.28 |
.gitigonre 경로 제외하기 / push 취소하기 (0) | 2023.02.24 |
[GIT] 원격 저장소와 로컬저장소 생성 및 연결 (0) | 2023.02.22 |