728x90
# 출처 : [도서]Do it! 지옥에서 온 문서 관리자 깃&깃허브 입문(이고잉)
branch
branch(나뭇가지) → 버전 관리 시스템에서는 나무가 가지에서 새 줄기를 뻗듯이 여러 갈래로 퍼지는 데이터 흐름을 가리키는 말로 사용
▷ 기본적으로 master 브랜치 생성
▷ 사용자가 커밋할 때마다 master 브랜치는 최신 커밋을 가리킴
▷ 브랜치는 커밋을 가리키는 포인터와 비슷
브랜치의 기능
- 분기 : master 브랜치에서 뻗어 나오는 새 브랜치를 만드는 것
- 병합 : 분기했던 브랜치를 master 브랜치에 합치는 것
- 브랜치 생성 : git branch
- 브랜치 이동 : git checkout
- 브랜치 정보 확인 : git log --oneline --branches --graph / git log [기준브랜치]..[비교브랜치]
브랜치 생성
git branch
1. 세팅
mkdir menual
cd menual
git init
ls -al # .git 있는지 확인
vim work.txt # 'content 1' 작성 후, 저장 및 나가기
git commit -am "work 1"
git log # 커밋 내역 확인
vim work.txt # 'content 2' 작성 후, 저장 및 나가기
git commit -am "work 2"
vim work.txt # 'content 3' 작성 후, 저장 및 나가기
git commit -am "work 3"
2. 새 브랜치 생성
git branch # master 브랜치인거 확인
git branch apple # apple 브랜치 생성
git branch # apple 브랜치 생성 확인
git log # HEAD가 가리키는 브랜치가 master와 apple인거 확인
git branch google # google 브랜치 생성
git branch ms # ms 브랜치 생성
git branch # 브랜치 google, ms 생성 확인
git log # HEAD가 master, apple, google, ms를 가리키는거 확인
브랜치 이동
git checkout
git log # 깃 기록 확인
git branch # 깃 브랜치 확인
vim work.txt # 'content 4' 추가 후, 저장 및 나가기
git commit -am "master content 4" # master 브랜치로 커밋했다고 커밋메세지 작성
git log --oneline # 깃 기록 한줄로 확인(master branch기준으로 로그 출력됨)
git checkout apple # apple로 브랜치 변경
git log --oneline # 깃 기록 한줄로 확인(apple branch기준으로 로그 출력됨)
cat work.txt # work.txt에 적힌 내용 확인(위에서 작성한 contene4가 없음)
브랜치 정보 확인
git log --oneline --branches --graph
git log [기준브랜치]..[비교브랜치]
# git checkout apple # apple 브랜치로 되어있다면 생략
git work.txt # 'apple content 4' 추가 후, 저장 및 나가기
vim apple.txt # 'apple content 4' 추가 후, 저장 및 나가기
git add . # work와 apple 파일 전부 스테이지로 올리기
git commit -m "apple content 4" # 커밋 메세지 작성
git log --oneline # 깃 로그 한줄로 보기
git log --oneline --branches # 각 브랜치의 커밋을 함께 보기
git log --oneline --branches --graph # 그래프 형태로 깃 로그 보기
git log master..apple # master 기준으로 apple과의 차이점 확인
git log apple..master # apple 기준으로 master의 차이점 확인
브랜치 병합
728x90
'IT > Git' 카테고리의 다른 글
[Git] 원격 브랜치 가져오기 (2) | 2022.09.20 |
---|---|
[Git] 브랜치 병합 (0) | 2022.08.12 |
[Git] 작업 되돌리기 (0) | 2022.08.12 |
[Git] 커밋 메세지 수정 및 상세보기 (0) | 2022.08.11 |
[Git] 버전 만드는 단계마다 파일 상태 알아보기 (0) | 2022.08.11 |