티스토리 뷰
merge conflict의 상황을 만들기위해
git clone을 해주고
폴더를 만들어주고
이동한 후
git init을 통해
.git폴더를 만들어준다
시나리오는 이렇다
master 브랜치에서 a.txt, b.txt, c.txt를 만들고
hobin 브랜치, yohan브랜치를 만들고
b.txt를 각각 수정한 후,
다시 hobin -> master
yohan -> master로 merge할것이다
그러면 b.txt를 다르게 수정해서 conflict가 날것이고 이걸 해결하도록 해보겠다
요즘은 master브랜치말고 main브랜치라고한단다
흑인 인종차별 이슈때문에
그다음 vim명령어를 통해
a.txt를 만들고
i를 눌러 입력모드로 전환한 후
내용입력후
esc를 누르고
:wq를 눌러 저장하고 나온다
a.txt, b.txt, c.txt를 마찬가지로 만들어준다
그리고 commit을 해준다
hobin, yohan브랜치를 만들어준다
yohan 브랜치의 b.txt의 내용을 변경해준다
그리고 커밋
yohan도 마저 해준다
그러면 일단 hobin -> master로 merge해보겠다
우선 git checkout master한다음
git merge hobin
그다음
yohan브랜치 merge를 해보자
git merge yohan
그러면 예상대로 b.txt에서 merge conflict가 발생했고,
auto-merging이라고 뜬다
이제 vscode로 test폴더를 열어보자
요즘 툴에서는 어디서 conflict가 나는지 표시해준다
내용이 달라서 충돌이나고 있고,
HEAD와 yohan브랜치에서 충돌이난다
HEAD란 현재 체크아웃한 브랜치의 가장 최신 커밋
가장 최근에 체크아웃한 브랜치는 master이므로
HEAD는 master이다
conflict해결은
사용자가 직접한다
어떤 부분을 살릴거고,
지울건지 정한 후 저장한다
나는 HEAD부분을살리고
yohan을 지우겠다
저장한 후
git bash로 돌아와
git add한 후, git commit을 해주면
master브랜치에서 b.txt를 확인해보자
hobin version으로 잘 저장된 것을 확인할 수 있다
'개념' 카테고리의 다른 글
git 이전 커밋 수정 (0) | 2023.01.04 |
---|---|
DFS와 BFS (0) | 2022.03.08 |
노트북 부품 및 운영체제에대한 개념 (0) | 2022.02.24 |
네이티브 앱 vs 하이브리드 앱 vs 크로스 플랫폼 앱 (0) | 2022.02.16 |
와이파이 비밀번호를 알아내는 방법 (0) | 2022.02.06 |
- Total
- Today
- Yesterday
- SpringBoot
- 데이터베이스
- git 예전 커밋 수정
- 오픈소스
- DDL
- 리눅스
- 로스트아크 캐릭터
- html
- authorization code
- 프로그래머스
- 클로아
- infcon 2024
- 데이터3법
- git
- 2024인프콘
- 인프콘2024
- html #웹 #웹사이트 #플레이리스트
- Android Studio
- kloa
- oauth2.0
- bfs
- oauth
- authorization_code
- DML
- CSS
- 데이터 3법
- git commit 수정
- javascript
- 우분투
- SQL
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |