2008-09-09 4 views
19

TFS에서 직접 상위 또는 하위가 아닌 분기에 병합 할 수 있습니까? 나는 이것이 내가 그것을 사용하는 동안 겪어 왔던 것처럼 대답이 아니오라고 의심한다. 그러나 특정 시간에 다른 승인주기가있을 수있는 다른 기능 (예 : 기능 1 이 기능 2 이전에 승인 될 수있는 경우)이 실제로 유용 할 수 있습니다. 우리가 다음 분기 전체 버전 이전에 출시 할 수 있도록 이전 지점으로 일부 기능을 병합해야하는 생산 지점이있을 때 이것은 매우 어려워집니다.TFS에서 교차 분기 병합?

현재의 분기 전략은 트렁크 (또는 mainline)에서 개발하고 안정화 및 생산으로 출시 할 분기를 만드는 것입니다. 그런 다음이 브랜치를 사용하여 핫픽스 및 기타 사항을 작성할 수 있으며, 메인 라인은 다가올 기능에 대해 분기 될 수 있습니다.

위에 기술 된 것과 같은 시나리오를 완화하기 위해 어떤 기술을 사용할 수 있습니까?

+1

ㅎ, 톱 분기 우리의 TFS를 구성 할 때이 문서가 헤아릴 수 없을 발견의 TFS 명령 프롬프트에서 실행 이것에 upvote 그리고 TFS와 함께 내 일의 생각 나게했다. 다행히 약 2 년 전에 Git으로 옮긴 이래서 나는 이것에 대해 걱정할 필요가 없었습니다.) –

+3

잘못된 Joel, 기술적 한계에 대해 걱정할 필요가없는 동안, git은 분기하는 것이 더 낫습니다. 당신은 여전히 ​​역기능적인 행동에 대해 걱정해야합니다. –

+0

TFS 2013.3/VSO로 업그레이드하고 Git 기반 팀 프로젝트로 마이그레이션하는 것이 좋습니다. –

답변

18

Harpreet에 동의하는 것으로, 분기 구조를 어떻게 설정했는지 재검토하고 싶을 수도 있습니다.그러나 이러한 유형의 병합을 실제로 수행하려는 경우 근거없는 병합이라는 것을 통해 수행 할 수 있습니다. 그것은

Tf merge /baseless <<source path>> <<target path>> /recursive 
근거 병합에 대한

추가 정보를 찾을 수 here

이 또한 내가 구조를 Microsoft Team Foundation Server Branching Guidance

1

AFAIK 동일한 원본 폴더에서 분기를 만들면이 작업을 수행 할 수 있습니다.

  • 트렁크/
  • 지점/ - (트렁크에서 분기) /feature1 -

/feature2 (트렁크에서 분기) 이렇게하면 다음 feature1 사이에 병합 할 수 있어야한다 및 feature2도 포함됩니다.

TFS와의 내 분기/병합 경험은 나를 더 남겨두고 싶습니다. 나는 우리가 방금 SVN을 가지기를 바란다.

2

분기 전략을 재검토하고 싶을 수 있습니다. 생산 지사는 어떻게 받습니까? 개발 분기, 회귀 테스트의 모든 코드를 병합하고 수정을위한 프로덕션 지점을 만드는 중입니까? 아니면 트렁크에서 개발하고 생산 지점을 만들어 안정화하고 출시 할 계획입니까? 두 번째 방법은 설명하는 유형의 문제를 만듭니다. 첫 번째 접근법을 사용하는 경우 - 트렁크는 테스트 된 분기에서 빌드 된 후 트렁크가 병합 된 경우에만 사용됩니다. 이 방법으로는 여전히이 문제가 발생하면 개발 노력이 매우 커서 분기 및 승격 계층과 함께 비교적 복잡한 분기 전략이 필요할 수 있습니다.

1

예,하지만 명령 행 (tf.exe)에서, 근거없는 병합 할 수 있습니다.

+1

2012 년부터 UI에서베이스리스 병합을 할 수 있습니다. –

1

TFS를 사용하면 부모/자식이 아닌 분기와 병합 할 수 있습니다. 이러한 것을 근거없는 병합이라고합니다. 이 링크를 참조하십시오 :

From MSDN

From the TFS Team via CodePlex

우리는 일반적으로 개발 분기에 주요 또는 불안정 변경을한다. 우리 제품 중 하나의 주요 릴리스에 가까운 경우 거의 모든 변경 사항이 지점에서 수행됩니다.

관련 문제