1. local repository의 README.md 파일 수정
vi 편집기로 README.md 파일 열기
vi README.md
i 누르면 편집 모드로 바뀜, ! 지우기
편집 완료했으면 esc 누르고, “:wq!” 입력하고 enter 눌러서 저장

cat 명령어로 변경사항 저장됬는지 확인
$ cat README.md

변경사항 commit 하기
$ git add README.md
$ git commit -m "modify README.md"
2. remote repository의 README.md 파일 수정
remote repository의 README.md 파일에서는 !!!!추가하고 변경사항 commit

3. 충돌 상황에서 push/pull
remote repository에 push하면 거부 당함 → remote repository에 같은 파일의 같은 라인에 이미 변경 사항이 있기 때문

마찬가지로 git pull을 해도 거부 당함

4. Auto merge 설정
git pull 명령을 실행할 때, 충돌 시 merge 방식을 사용하도록 설정
$ git config pull.rebase false
하지만 git pull 해보면 auto merge 실패
- 같은 라인에 대해서는 auto merge를 할 수 없기 때문, 충돌되는 부분을 직접 수정해야함
$ git pull

vi 편집기로 README.md 파일 열고, 원격과 로컬에 있는 것 중 어떤 것을 남길지 선택
vi README.md
as-is: 어떤 라인에서 충돌되는지 확인 가능함

be-to: local repository의 변경사항으로 수정

이후 변경사항을 commit하고, push
$ git add README.md
$ git commit -m "modify README.md"
$ git push
5. remote repository 확인하기
최종적으로 local repository의 변경사항이 반영됨

network graph 확인해보면 branch가 생겼다가 main branch와 merge됨
- commit log에도 merge branch ‘main’ of ~~ 라는 메시지가 남겨짐

'DevOps > Git' 카테고리의 다른 글
[Git] Github Actions으로 투표 앱 EC2에 배포하기 (0) | 2024.12.29 |
---|---|
[Git] GitHub Actions 사용해보기 (0) | 2024.12.29 |
[Git] fork & branch (0) | 2024.11.22 |
[Git] Git 설치하기 & repository 사용하기 (0) | 2024.11.19 |
[Git] Git 기본 개념과 용어 (0) | 2024.11.17 |