manual-2
라는 깃 저장소 만들기
cd ~
git init manual-2
: 새로운 디렉터리 만들고 저장소 초기화
cd manual-2
: manual-2 디렉터리로 이동
ls -al
: 디렉터리 리스트 확인 (.git/
디렉터리 확인)
work.txt
파일 만들고 커밋하기
vim work.txt
: work.txt파일 만들어 '1' 입력하고 저장
git add work.txt
: 스테이지에 넣기
git commit -m "work 1"
: 커밋 메세지와 함께 커밋
o2
라는 브랜치 만들기
git branch o2
main
브랜치에 master.txt
파일 만들고 커밋하기
vim master.txt
: master.txt 파일 만들어 'master 2'입력, 저장
git add master.txt
git commit -m "master work 2"
o2
브랜치로 이동(체크아웃)
git checkout o2
o2
브랜치에서 o2.txt
파일 만들고 커밋하기
vim o2.txt
: o2.txt 파일 만들어 'o2 2' 입력하고 저장
git add o2.txt
git commit -m "o2 work2"
git log --oneline --branches --graph
o2
브랜치의 내용을 master
브랜치로 병합하기
git checkout main
: main 브랜치로 이동(체크아웃)
git merge o2
: o2를 master 브랜치로 가져와 병합
main
브랜치와 o2
브랜치에는 똑같이 work.txt
파일이 있음. 양쪽 브랜치에서 work.txt
파일을 수정하되 서로 다른 위치를 수정한 후 브랜치를 병합했을 때 어떤 결과가 나오는지 확인
manual-3
이라는 깃 저장소를 만들고, 디렉터리로 이동
git init manual-3
cd manual-3
work.txt
파일을 만들고 아래와 같이 입력
vim work.txt
work.txt
를 스테이지에 올리고 커밋.
gid add work.txt
git commit -m "work 1"
o2
라는 새로운 브랜치 만들기
git branch o2
work.txt
를 먼저 main
브랜치에서 수정
vim work.txt
main
브랜치에서 수정한 work.txt
커밋
git commit -am "master work 2"
o2
브랜치의 work.txt
파일 수정
git checkout o2
vim work.txt
o2
브랜치에서 수정한 work.txt
파일 커밋
git commit -am "o2 work 2"
o2
브랜치를 main
브랜치에 합치기 위해 main
브랜치로 체크아웃
git checkout main
o2
브랜치를 main
브랜치로 끌어옴.
git merge o2
cat work.txt
깃에서는 줄 단위로 변경 여부를 확인.
그래서 각 브랜치에 같은 파일 이름을 가지고 있으면서 같은 줄을 수정했을 때 브랜치를 합병하면 브랜치 충돌이 발생.
manual-4
라는 깃 저장소 만들고, 디렉터리로 이동
git init manual-4
cd manual-4
work.txt
파일 만들기
vim work.txt
work.txt
를 스테이지에 올리고 커밋
git add work.txt
git commit -m "work 1"
o2
브랜치 만들기
git branch o2
work.txt
를 먼저 main
브랜치에서 수정 후 커밋
vim work.txt
git commit -am "master work 2"
o2
브랜치의 work.txt
파일도 수정 후 커밋
git checkout o2
vim work.txt
: title 사이에 'o2 content 2' 입력, 저장
git commit -am "o2 work 2"
master
브랜치에서 병합
git checkout main
git merge o2
vim work.txt
<<<<<<<<< HEAD
와 가운데 가로줄(==========
) 사이의 내용은 현재 브랜치, 즉 master 브랜치
에서 수정한 내용. 가로줄(==========
)과 >>>>>>>> o2
사이의 내용은 o2 브랜치
에서 수정한 내용. 이 부분을 원하는 대로 수정하고 저장.
git commit -am "merge o2 branch"
git log --oneline --branches --graph
브랜치를 병합한 후 더 이상 사용하지 않는 브랜치는 깃에서 삭제할 수 있음.
이렇게 브랜치를 삭제하더라도 이 브랜치가 완전히 지워지는 것이 아니라 다시 같은 이름의 브랜치를 만들면 예전 내용을 다시 볼 수 있음.
git branch
main
에서 o2
브랜치 삭제하기
git checkout main
: main 브랜치로 이동(체크아웃)
git branch -d o2