2012-09-12 4 views
1

SVN에서 충돌이 감지되는 방법을 알고 싶습니까?SVN에서 충돌이 감지되는 방법은 무엇입니까?

예를 들어 사용자 1이 file.c를 커밋하고 사용자 2가 자신의 로컬 복사본 (svn up)을 업데이트하려고합니다.

  1. 자동 병합을 발생하는 두 가지가 있습니다 : SVN은 자동으로 변경 내용을 병합 할 수 있습니다.

  2. 충돌 :: SVN 자체가 변경 내용을 병합 할 수 없습니다. 사용자가 직접해야합니다.

어디에서 SVN이 변경 사항을 병합하지 못하게 도와 주시겠습니까?

+0

일반적으로 사용자 1과 사용자 2가 동일한 코드 줄을 수정하면 수동 병합이 트리거됩니다. –

답변

1

간단한 예 :

  • 사용자 1은
  • 사용자 2 문제, 자신의 작업 카피 file.c의 마지막 커밋,
  • 사용자 2는 수정 한 라인 (42)에 file.c의 라인 (42)을 수정 한 svn up 따라서 사용자 1이 커밋 한 변경 내용을 작업 복사본으로 전파하도록 요청합니다.

이 경우 SVN은 사용자 2의 변경 사항을 사용자 1의 42 행으로 덮어 써야하는지 또는 사용자 1의 변경 사항을 무시할지 결정할 수 없습니다. 인간이 개입하지 않아도 같은 줄에 변경 내용을 병합 할 수는 없습니다. 이것은 갈등입니다.

+0

@Hamidi, 설명해 주셔서 감사합니다. 그것은 당신이 말한대로 완벽하게 충돌을주고있다. 어떤 경우에는 SVN 자동으로 병합 (두 사용자가 다른 라인을 수정). 나는 '갈등'을 초래할 수있는 모든 수정에 관심이 있습니다. 어떤 책/링크가있어 충돌을 식별하기 위해 어떤 절차가 사용되는지 볼 수 있습니까? - 미리 감사드립니다. –

+0

@osjayaprakash, 솔직히 SVN과의 충돌 상황을 초래할 수있는 가능한 모든 이유에 대한 정식 참조를 모르겠습니다. (사용중인 정확한 버전에 따라 다를 수 있습니다.) 즉, 당신의 호기심을 이해하고 SVN 소스 코드의 관련 부분을 살펴볼 것을 제안합니다 (귀하의 상황에서 그렇게 할 것입니다). 그렇게하면 확실한 답을 얻을 수 있습니다. –

관련 문제