2010-07-02 6 views
0

버전 관리를 위해 Subversion에서 Microsoft의 Team Foundation Server로 옮겼습니다. TFS에서 불연속적인 변경 세트를 병합 할 수 없다는 것을 알고 있습니다.TFS 2008 버전 제어에서 불연속 변경 집합을 병합 하시겠습니까?

예를 들어, I는 다음과 같습니다 "baseline.txt"라는 파일이 있습니다

line one 

그런 다음, 나는 "branch.txt"라는 새 파일에 파일을 분기를 다음 두 가지를 마침내 다음과 같습니다 있도록 "baseline.txt"에 대한 기능을 확인하십시오

line one 
line two //checked-in change-set A 
line three //checked in change-set B 

지금, 나는 "branch.txt"에 단 하나의 변화 - 세트 B를 병합 할. 즉, 나는 병합 후 같이하는 "branch.txt을"기대 :

line one 
line three //checked in change-set B 

는 기본적으로, 나는 변화 세트 A를 건너 뛰고 그것은 서브 버전에서 가능한 변화 세트 B를 병합하기를 원하지만 TFS에서 changeset-B를 얻으려면 모든 변경 세트를 "up-to"B로 가져와야합니다.

사실입니까? 그게 내 실험 결과이지만 "Understanding ChangeSets and Merge with Team Foundation Server"은 다르게 나타납니다.

+0

하지 않음 , [이 기초가없는 병합에 관한 질문] (http://stackoverflow.com/questions/1437304/tfs-baseless-merge-on-specific-changesets)이 당신이 찾고있는 해답을 가지고있을 수도 있습니다. –

답변

0

그 기사는 혼란스럽고 정확하지 않다고 생각합니다. 두 번째 변경 내용을 체크 인하면 병합 충돌이 발생합니다.

  1. 새로운 변경 집합에 덮어 쓰기하여 변경 사항을 병합, 또는
  2. 는 새로운 변화를 기존의 유지 및 폐기 : 그 당시, 당신은 세 가지 방법 중 하나로 충돌을 해결해야합니다. 당신이 다시 baseline.txt에 병합 준비 할 때, 당신은 당신이 확인하는거야 파일의 "시점"버전이 상관없이,

.

+0

Robaticus에서는 이러한 일련의 체크인에 충돌이 발생하지 않습니다. 충돌이 일어날 수있는 유일한 가능성은 변경 지점 B가 생성 된 곳과 변경 집합 B가 병합되기 전에 변경이 발생한 경우입니다. –

+0

나는 checkin 1과 checkin 2가 두 개의 분리 된 기계로 만들어 졌다고 생각했다. 이 경우 처리해야 할 병합 충돌이 있습니다. 나는 같은 기계에서 두 가지 변화가 일어날 수있는 시나리오를 상상할 수 없다. – Robaticus

+0

다른 충돌은 변경 집합 B와 관련된 Baseline.txt의 버전을 선택할 때 실제 병합 자체 일 것입니다.이 두 번째 읽기는 내가 생각하는 충돌입니다. baseline.txt를 만드는 데 사용 된 세 개의 변경 집합 (초기 추가, 줄 2 및 줄 3)에는 충돌 해결이 포함되지 않습니다. –

관련 문제