git \ github

· git \ github
Git pull과 fetch의 차이점 본격적인 이야기에 앞서 '클론'이란 무엇일까요? 클론 저장소(clone repository)는 원격 저장소를 복제한 저장소입니다. 이는 다른 사람의 소스 코드 복사본을 생성하는 것과 같으며, 개발을 할 때 보통 우리는 클론 저장소에서 작업을 진행하게 됩니다. 이러한 상황에서 만일 원격 저장소에 변경 사항이 생겼다면, 그 내용을 가져와 클론 저장소를 최신 상태로 유지해주어야 합니다. git fetch : 로컬 Git에게 원격 저장소에서 최신 메타데이터 정보를 확인하라는 명령을 전달. 단 fetch는 원격 저장소에 변경사항이 있는지 확인만 하고, 변경된 데이터를 로컬 Git에 실제로 가져오지는 않는다. git pull : 원격 저장소에서 변경된 메타데이터 정보를 확인할 ..
· git \ github
Rebase란? Git에서 한 브랜치에서 다른 브랜치로 합치는 방법으로는 두 가지가 있다. 하나는 Merge 이고 다른 하나는 Rebase 다. Rebase의 특징 Git에서 한 브랜치에서 다른 브랜치로 합치는 방법은 Merge와 Rebase다. Merge와 Rebase의 실행결과는 같지만 커밋 히스토리가 달라진다. Merge는 쉽고 안전하지만 커밋히스토리가 지저분할 수 있다 반면 Rebase는 잘 모르고 사용할 경우 위험할 수 있어 까다롭지만 커밋히스토리를 깔끔하게 관리할 수 있다. Rebase는 base를 새롭게 설정한다는 의미로 이해하면 좋다. Merge로 branch를 병합할 때의 구조 Rebase로 branch를 병합할 때의 구조 아까 Merge와 다른점은 커밋들이 여러갈래로 있었던 Merge와..
· git \ github
충돌이 일어나는 이유 여러 개발자가 동일한 콘텐츠를 편집하려고 하는 경우가 있습니다. 개발자 B가 편집 중인 코드를 개발자 A도 편집하려고 하면 충돌이 발생할 수 있습니다. 예제 충돌 시나리오 원본 A B C를 각자의 브랜치에서 영재는 A B' C로 수정하였고 서정은 A B'' C로 수정하였다. 이때 영재와 서정의 코드를 병합할때 충돌이 발생했다. 충돌한 이유는 서로 B를 수정했는데 이때 컴퓨터는 B, B', B''중 어떤 코드를 남겨야 할지 모르기 때문이다. 1. yeongjae branch에서 B를 B'로 수정하고 commit 2. seojeong branch에서 B를 B''로 수정하고 commit 3. seojeong branch와 yeongjae branch를 병합 (충돌이 발생) 충돌이 발생한 ..
· git \ github
merge란? git branch를 다른 branch로 합치는 과정을 merge라고 한다. merge의 기본 단위는 branch이며 git merge명령어로는 commit 단위로 합치기가 불가능하다. A브랜치를 B브랜치(master)에 합칠때 1. B브랜치를 체크아웃 git checkout 'B-branch' 2. B브랜치를 체크아웃한 상태에서 병합한다 git merge 'A-branch' B-branch를 master branch에 합치는 경우 master branch로 이동 master branch로 이동 git log로 확인
zero_jae
'git \ github' 카테고리의 글 목록