Atomic Habits

git3 - Sourcetree branch & conflict 본문

IT/Git

git3 - Sourcetree branch & conflict

체계성 2021. 10. 17. 14:53

git3 - Sourcetree branch & conflict 2. 실습준비

1) 로컬 저장소 생성

 

2) .git 폴더 생성 확인 / text파일 생성 및 내용 추가 후 SourceTree 반영 확인(stage)

   저장소를 만드는 순간 master라는 기본 브랜치 위에서 작업을 하게 된다. 

 

3) 버전1 완성 - [모두 스테이지에 올리기] 클릭 후 커밋 수행

 

4) 버전2 생성 ( 기존 txt 파일에 내용 추가 작업 )

 

5) 버전3 생성 ( 기존 txt 파일에 내용 추가 작업 )

 


git3 - Sourcetree branch & conflict 3. 브랜치의 기본사용법

커밋, 병합 되는 History 구조 이해력 중요

1) 브랜치 생성

 

2) 브랜치 확인

 

3) master 브랜치에서 work.txt 파일 추가(new 버전)

4) 아직 커밋하지 않은 사항 등장 -> 커밋

5) 모두 스테이지에 올리고 커밋 수행

6) master, apple 브랜치에 접속을 변경하면서, 같은 저장소 내 txt 파일의 내용이 바뀌는 것을 확인

7) apple 브랜치 접속

 - work.txt 내용 변경

content 1
content 2
content 3
apple content 4

 - apple.txt 파일 생성 후 내용 추가

apple content 4

 - 내용 변경 직후 -> 좌측 상단 커밋 클릭 -> 메시지 : apple work 4 -> Stage All 올리기 클릭 -> 우측 하단 커밋

 - master에 접속하면 apple.txt 파일은 존재하지 않음

 

8) 히스토리 분석

 - 좌측 브랜치 볼드체 : 현재 apple 브랜치에 접속 중

 - 히스토리 최상단 글자 볼드체 : 현재 apple 브랜치에 접속 중

 - apple work4 를 커밋한 apple 브랜치는 work3에서 시작됐다.

   master work4 를 커밋한 master 브랜치는 work3에서 시작됐다.

 - apple과 master 브랜치는 공통의 작업물을 기반으로 시작했고, 서로 다른 내용을 추가하며 가지가 뻗어져 나왔다.

 

9) google 브랜치 접속

 - 파일 생성 및 내용 추가

 - work3 기반 새로운 가지가 뻗어져 나왔다.

 - 스테이지에 올리고 google work 4 메세지로 커밋하자. -> 새 버전이 생성된다.

 

 


git3 - Sourcetree branch & conflict 3.2. 브랜치의 기본 사용법

1)  HEAD : 검정 동그라미 - 현재 어느 브랜치에 접속되어 있는지 알려주는 표시

2) CheckOut : 현재 HEAD를 다른 브랜치로 옮기는 행위( 옮길 브랜치 더블클릭 or 우클릭 - checkout 클릭 )

 


git3 - Sourcetree branch & conflict 4.1. 병합

1) (ㄷ) 작업물 기반으로 새 내용을 추가한 master 브랜치의 버전(작업물) (ㅁ)과 

  (ㄷ) 작업물 기반으로 또 다른 내용을 추가한 apple 브랜치의 버전(작업물) (ㄹ)을 합쳐서

  새로운 버전 (ㅅ) 을 만든다.

2) (ㅅ) 은 새로운 master의 버전이 된다. 

 

 

Comments