이 페이지의 이전 버전을 보고 있습니다. 현재 버전 보기.

현재와 비교 페이지 이력 보기

« 이전 버전 4 다음 »

수정 전 코드 상태

아래는 수정 작업 전의 코드 상태를 나타낸다.

HelloWorld.java
	public void setBoolean(boolean value)
	{
		/*
		 * 추후 플래그 변경시 이벤트 발생 기능 추가 필요
		 */
		this.flagValue = value;
	}

코드 수정

Developer와 Terry Hwang이 유사한 시간대에 코드를 수정한다.

개발자 이름: Alvin

  • 개발자 Terry Hwang 보다 먼저 코멘트 를 작성하여 저장소에 push 함
  • Code review 를 통과하여 저장소에 merge 됨
	public void setBoolean(boolean value)
	{
		/*
		 * 플래그 변수값 변경
		 */
		this.flagValue = value;
	}

개발자 이름: Terry

  • Alvin 의 수정 내용을 인지하지 못하고 같은 코드 위치에 코멘트 작성
	public void setBoolean(boolean value)
	{
		/*
		 * 추후 플래그 변경시 이벤트 발생 기능 추가 필요
		 */
		this.flagValue = value;
	}

Conflict 발생

Terry는 Eclipse에서 변경사항 push를 시도하면서 code conflict 인지

Step 1) 원격 저장소의 변경사항 가져오기

프로젝트 선택하여 마우스 우클릭 >> Team >> Pull 선택

Conflicting이 발생한 commit 목록이 표시된다.

Step 2) Conflict 위치 찾기 및 수정

Eclipse의 Project Explorer에 conflict이 발생한 파일을 확인하다. 

Git은 컴파일 오류를 유발고 눈에 띄게 할 목적으로 conflict이 발생한 부분을 <<<<<<< ====== >>>>>>> 로 표시한다.

복잡한 conflict이 발생한 경우 Eclipse에서 제공하는 merge 기능이 유용하다.

Project (또는 conflict이 발생한 파일 선택) >> Team >> Merge Tool

Merge 도구를 통해 수동 merge가 필요한 파일과 위치를 찾을 수 있다.


  • 레이블 없음