
저번 게시글에 이어 Git / Github 에 대해 정리해보려 한다.
특히 git fetch !
수업 마지막에 빠르게 실습하고 넘어갔는데
오늘 다시 만나보니.. 쉽지 않은 친구였다.... 친구가 많은 친구였다...
origin의 수정(변경)사항을 local로의 다운로드.
git pull (origin main) ⇒ main 에서 생략 시 현재 브랜치로 가져옴
working directory까지 반영.origin 과 local repository 의 commit 이력이 같은 상황,
local 의 working directory 에서 수정 이후 git pull
origin 에만 commit 이력의 추가가 발생 → 충돌상황X
git pull 또는 git pull origin 브랜치명 을 통해 update사항 download 후 반영
⇒ head(현재 체크아웃된 브랜치의 가장 최신커밋을 의미)만 이동하는 이와 같은 상황을 fast forward라 부름
test1.txt 파일을 origin 에서 수정 후 local에서 똑같이 test1.txt 를 pull 했을 때

fast-forward 가 조회됨을 알 수 있다 !
origin 에 commit 이력의 추가가 발생,
local 에 별도 commit 이력 발생. 그러나 둘이 같은 파일이 아닌 경우 → 충돌상황X
origin > 1.txt / local > 2.txt 커밋 했을 때
바로 pull 해도 되지만, 확인해보고 싶을 때 fetch 후 diff 로 main과 main/origin 비교 후 merge 하면 됨 !

→ git push origin master 하면 오류 !

→ git fetch ⇒ git diff master origin/master 로 비교 !
origin 에 commit 이력의 추가가 발생,
local working directory 또는 staging 에서 작업 후 git pull → 충돌 발생
fetch까진 성공하였으나 local의 commit 이력이 존재하지 않아 merge 할 수 있는 병합파일이 생성되지 않음.
git pull 후 에러메세지 확인 → 1. commit 2.stash(임시 보관) 중 선택 !


방법 1. 작업 사항 복사해두고, 취소한 다음 git pull → 작업 사항 다시 추가해서 add commit push
방법 2. 기존 수정본을 backup을 만들어두고, 로컬 작업을 취소 → git pull origin main 후 복사본을 참고하여 수정 작업. 백업을 위해 git stash 활용 가능.
origin 에 commit 이력의 추가가 발생,
local 에 별도 commit 생성 후 → git push origin main시에 충돌 발생.
방법 1.
local commit 발생, origin commit 발생 (같은 파일에서)
git push → 충돌 실패 → git pull → auto merge failed → 병합 파일 만들어줌 → 수정 후 add commit merge



방법 2.
원격 commit 발생, 로컬 workspace 작업 (저장만)
git pull → 에러 → add commit merge → 병합 파일 생성 → 충돌 해결하세요( <<< >>>)

git fetch → git diff → git merge origin/main (또는 git pull) → working directory에서 충돌 해결 후 다시 add, commit, push
위가 local 변경, 아래가 origin 변경 ! 수신 변경 사항 수락 누르면 origin 변경 사항이 자동 반영

브랜치란 버전과는 다르게 개발의 경로를 의미
- feature/author_register
- 새로운 기능을 추가할 때 사용
- 가장 많이 사용
- bugfix/author_register
- 버그를 수정할 때 사용.
- hotfix/author_register
- 긴급한 버그 수정을 위한 브랜치
- 모든 브랜치 이력 push
- git push --all : 모든 브랜치의 커밋이력 push

branch 가 많아질수록 내가 건드리는 모든 것들이 오류가 되는 실습이었다.
질문 세례를 감당해준 짝꿍 은지님에게 무한 감사를..🥲
모든 걸 기억할수는 없겠지만, 비슷한 상황이 왔을 때 검색어 정도는 떠올릴 수 있도록
여러 번 실습하고 복습해야겠다 !
와.. 자극받고 갑니다!!
헬스체크 깃레포도 보고갑니다! 대단..