브랜치는 버전의 분기
브랜치로 버전의 분기를 관리하는 방법 3단계
- 브랜치를 나눈다
- 각자의 브랜치에서 작업한다.
- (필요하다면) 나눈 브랜치를 합친다.
작업 과정
- git branch : 브랜치 이름 조회. 별표표시가 지금 환경임. main(master)브랜치
- git branch foo(새브랜치이름)
- git checkout foo : foo브랜치로 작업환경을 바꿔주겠다
- foo_a.txt 파일 만들어서 내용 작성
- git add foo_a.txt
- git commit -m "foo commit"
- git checkout master(or main)
- git branch -d 브랜치명 : 체크아웃되어있지 않은 브랜치만 삭제할 수 있음.
특정 브랜치에서 작업하기: HEAD와 체크아웃
- HEAD 는 포인터. 가리키는 대상
- 현재 작업 중인 브랜치의 커밋을 가리킨다.
- 일반적으로 현재 작업 중인 브랜치의 최신 커밋을 가리킨다
- 한 마디로 내가 지금 어디에서 작업중인가를 가리킴 - 체크아웃
HEAD의 위치를 특정 브랜치의 최근 위치로 옮기는거
브랜치를 합친다 == 브랜치를 병합(merge)한다
merge에는 새로운 커밋을 만드는 병합과
새로운 커밋을 만들지않는 병합이 있음
빨리감기 병합(fast-forward merge)
foo 브랜치가 뻗어나와서 커밋이 쌓이는 동안 master브랜치는 추가된게 없어서
추가된 커밋을 빨리감기하듯 추가된 것만 반영하면 됨.
fast-forward merge는 변함이 없던 브랜치가 마치 빨리감기하듯이 foo브랜치에서 추가된 커밋을 반영
master브랜치에도 다른 커밋이 있는 상황에선?
master브랜치와 새 브랜치 둘 다 서로 없는 커밋이 있는 상황
=> 두 브랜치를 병합한 새로운 커밋이 생성
명령어
- git branch 브랜치 목록 조회
- git branch 브랜치명 : 생성
- git branch -d 브랜치명 : 삭제
- git checkout 브랜치명 : (생성하고) 체크아웃
- git merge 브랜치명 : 병합
충돌 해결하기 (⭐⭐⭐충분히 연습해)
- 충돌을 해결한다.(어떤 브랜치의 내용을 반영할지 직접 선별한다) - 어떤 내용을 반영할지만 남겨두고 나머진 다 지워주면 됨
- 다시 커밋한다. add하고 commit
깃 연동하긔 안전한 사용
Windows에서 Github 연동하기: https://youtu.be/P9gMl4O4kVg (7분 25초까지)
'Git' 카테고리의 다른 글
Git 특강 - 3. Github 원격저장소 (0) | 2023.06.08 |
---|---|
Git 특강 - 1. Git 버전관리 (0) | 2023.06.08 |
명령어 정리 (0) | 2023.06.07 |
.gitignore (0) | 2023.05.18 |
[에러해결] unable to access The requested URL returned error: 403 (0) | 2023.05.18 |