**git 병합 충돌해결 꽤 어렵...!

충돌난 파일이 있으면 다른 브랜치로 이동 불가

해당 브랜치에서 먼저 수정파일을 알맞게 수정후 커밋하기

 

elice 브랜치에서 충돌이 발생한 부분을 수정하고 커밋한다. 

git add crawling.py
git commit -m "충돌해결"

현재 elice 브랜치에 커밋한 내용은 master브랜치에 존재하지 않는다. 이제 git merge 명령어를 사용하여 두 브랜치를 합칠 수 있다.

먼저 현재 브랜치를 합치고자 하는 대상 브랜치로 전환해야 한다. 그 다음 git merge를 실행하여 현재 브랜치에 합치려는 브랜치명을 지정하면 된다. -> elice 브랜치의 변경 사항이 master브랜치에 합쳐졌다.

git checkout master
git merge elice

만약 elice 브랜치 (현재 브랜치)에서 master 브랜치 (대상 브랜치)로 merge를 시도하면 Already up-to-date라는 오류 메시지가 뜨니 주의하자!!!!!!! 

참고페이지: https://mylko72.gitbooks.io/git/content/branch/merge.html

git log --graph 결과

elice 브랜치에서 git merge madhatter를 하면 elice 브랜치에서 madhatter 변경점을 반영하는 것이고,

madhatter 브랜치에서 git merge elice를 하면 madhatter 브랜치에서 elice 변경점을 반영하는 것이다.

충돌을 해결하는 것을 소스파일을 변경한 후에 elice 브랜치에서 git add, git commit를 한다. 그러면 elice 브런치응 충돌이 해결 됐는데 madhatter 브랜치에서는 아직 변경점을 반영하지 않아서 elice 브랜치를 merge 시켜야 하는 것이다!!!!!!

 

**git 원격 저장소!!

git clone 명령어로 현재 디렉토리에 원격저장소의 내용을 복제한다

 

1. git remote add origin (원격저장소의 주소 또는 원격저장소의 이름)으로 로컬저장소와 연결합니다

-> 이는 원격저장소의 단축이름을 origin으로 하겠다는 의미! (myproject가 단축이름으로 지정할 수도 있는것임)

기본적으로 만들어진 원격저장소의 이름은 origin이 default값 입니다. 때문에 clone으로 복사해온 저장소의 이름은 origin으로 통일되게 됩니다

git remote add origin https://github.com/group/project

git remote -v

-> 지정한 저장소의 이름과 주소를 한꺼번에 볼 수 있음!

 

2. git fetch 나 git pull을 이용하여 원격저장소의 내용을 동기화합니다.

 

pull은 로컬 저장소에 있는 master를 자동으로 원격저장소에 있는 내용과 합쳐주는 역할을 수행합니다.

git pull이 이루어지지 않는 경우는 보통 다른사람이 올린 commit의 내용과 내 컴퓨터에 존재하는 내용이 서로 충돌할 때입니다.

이러한 현상은 하나의 브랜치에서 여러 사람이 동시에 작업하면 발생할 확률이 높아지게 됩니다.

따라서 여러 개의 브랜치를 나누고 각자 브랜치에서 작업한 후에 웹호스팅 서비스에 존재하는 merge request로 하나씩 합쳐가는 방식을 사용하면 충돌이 일어나는 것을 막을 수 있고 매번 새롭게 merge해야하는 수고를 덜 수가 있습니다.

 

3. fetch를 실행한 경우 git merge origin/master로 병합을 완료해준다

** git fetch origin master : fetch를 통해서 origin(원격 저장소의 단축 이름)의 작업 내역을 master(로컬 저장소의 브랜치)로 불러온다

 

4. git push origin master를 이용하여 로컬 저장소에서 변경된 내용 -> 원격 저장소에 전달

** git push origin master : master(로컬 저장소의 브랜치)의 작업 내역을 origin(원격 저장소의 단축 이름)으로 push하겠다는 뜻!

git push origin master

다른 사람이 먼저 Push한 상태에서는 Push할 수 없다. 다른 사람이 작업한 것을 Merge부터 해야 한다!

 

01/15
영어단어 여러 번 보기 & 안보고도 말해보기 (아침루틴!)
매일 엘리스에서 공부한 것 블로그에 정리, 복습하기 
(새롭게 알게 된 내용, 중요한 내용 위주로.)
50개 단어 엑셀 정리 (저녁 루틴!)
코치님이 보내주신 자료들 공부하기
주차테스트 예습 학습하기

'엘리스 ai 트랙 > 주차별 공부' 카테고리의 다른 글

2주차 주차테스트 공부  (0) 2022.01.23
Git  (0) 2022.01.15
transform, transition, animation, 미디어쿼리 (CSS3)  (0) 2022.01.13

+ Recent posts