1

Google은 VS2005 솔루션을 호스팅하기 위해 원시 소스 컨트롤 (GIT 이외)과 함께 TFS 2015를 사용하고 있습니다.VS2013 및 TFS2015 분기를 사용하는 경우 분기 용 프로젝트 파일을 수정해야합니다.

최근에 지점을 만들었습니다. SccProjectName 설정에서 분기 이름을 명시 적으로 포함 했으므로 vcxproj 파일의 Scc- 섹션을 수동으로 수정해야했습니다. 브랜치를 메인 트렁크에 다시 병합하려고 할 때와 같습니다. 수정 된 섹션이 트렁크에 병합되지 않도록주의해야했습니다. 이것은 매우 성가신 일입니다. 해결 방법?

내가 검색 다른 곳에있는 SCC-바인딩 메타 데이터

<SccProjectName>SAK</SccProjectName> 
<SccLocalPath>SAK</SccLocalPath> 
<SccAuxPath>SAK</SccAuxPath> 
<SccProvider>SAK</SccProvider> 

를 사용하는 제안 페이지를 많이 발견했다 (MSSCCPRJ.scc을?). 이것은 나에게 합리적인 것처럼 보입니다.

하지만 우리는 명시 적으로해야 할 것과 깨질 수있는 것을 이해하지 못합니다. TFS 설치 및 구성에 대한 전문 지식이 없습니다.

답변

2

또한 Scc 아래에서 사용하는 것이 좋습니다. 실제로는 TFS의 소스 제어에 프로젝트를 추가 할 때 기본 Scc 설정입니다. 귀하의 경우에는

<SccProjectName>SAK</SccProjectName> 
<SccLocalPath>SAK</SccLocalPath> 
<SccAuxPath>SAK</SccAuxPath> 
<SccProvider>SAK</SccProvider> 

, 당신은 어떤 정책 한계가없는 옵션 인 경우 메인과 다른 지점 모두에 대한 SccProjectName-설정에서 지점 이름을 제거하려고 할 수 있습니다.

다른 변경 사항이 트렁크에 다시 병합되어야하는 경우 다른 방법으로 .vcxproj 파일을 제외하려고합니다.

  • 이 경우 Google에서 병합을 수행하고 제외하려는 파일에 대해 변경 사항을 실행 취소합니다 ( ). 변경이 완료되면 변경 사항을 확인하십시오. 병합을 수행하면 작업 영역에서만 병합됩니다. 그것은 당신이 체크인 할 때까지 서버에 가지 않습니다.
  • 당신은 병합 작업에 포함하지 않기로 .vcxproj 파일 을 강제로 명령 줄에서 tf.exe를 사용할 수 있습니다 tf.exe merge /discard <path to .vcxproj file > <destination branch>

    자세한 것은 Merge Command를 참조하십시오. Exclude a config file from the merge process

MSSCCPRJ.SCC 관련 정보를 들어, this article를 참조하십시오, 도움이되기를 바랍니다 : 또한이 스레드를 참조합니다.

+0

안녕하세요, 감사합니다. 나는 단지 사물을 시험하는 것보다 더 깊은 이해를하고 싶습니다. 변경 사항을 무시하거나 되돌릴 때 vcxproj 파일은 지금까지 내가 수행 한 것입니다. 그러나 병합해야 할 vcxproj 파일이 실제로 변경된 경우에는 만족스럽지 않습니다. – Scrontch

+0

@Scrontch 그럼 위에서 언급 한 기본 Scc는 무엇입니까? SccProjectName 설정이 없으면 문제가 해결되어야합니다. –