2010-08-02 2 views
5

TFS (버전 : Visual Studio 2008/TFS RTM (9.0.21022.8))에서 관리하는 50 개의 프로젝트가 두 개의 솔루션 트리로 나뉩니다.솔루션 트리간에 프로젝트를 공유하는 최상의 방법 (MSVS 2008 및 MSVS 2010)

30 + 프로젝트를 비주얼 스튜디오 2008 개 프로젝트 등 2010

새로운 프로젝트 바이너리에 대한 참조를 통해 일부 오래된 어셈블리를 사용하는 비주얼 스튜디오입니다 있습니다.

새 프로젝트를 개발하는 동안 오래된 어셈블리를 변경해야하므로 2 개의 MSVS 인스턴스를 동시에 열어야합니다.

두 개의 다른 스튜디오 솔루션 트리간에 TFS와 컴파일 가능한 소스를 공유 할 수있는 방법이 있습니까? 또는 2008 솔루션 트리를 2010 년으로 업그레이드 할 예정입니까? TFS 2008은 공유 프로젝트를 지원합니까 (또는 업그레이드해야합니까)?

미리 감사드립니다.

답변

6

앤드류 :

첫째로, 우리는 "모범 사례"의 몇이를 위해 위반,하지만 가장 좋은 방법은 현실 세계를 만나는 곳 실용주의이다.

는 우리가 할 것은 이것이다 :

모든 바이너리는 우리의 바이너리를 모두 통합 LocalBin 폴더 내에 TFS에 체크인하는
  1. .
  2. 모든 공유 어셈블리는 LocalBin/SharedBin 폴더에 있습니다.
  3. SharedBin 폴더는 팀 프로젝트 내의 최상위 SharedBin 폴더로 분기됩니다.
  4. 성공적인 기본 빌드에서 LocalBin/Sharedbin은 프로젝트의 SharedBin 폴더에 병합됩니다.

그것은 이런되는 것을 감는다 :

$/ProjectA/Main/Localbin/SharedBin$/ProjectB/Main/SharedBin$/ProjectB/Dev/Sharedbin로 분기된다 (물론 $/ProjectC에 해당 폴더를 $/ProjectD 등등).

우리는 MAIN 빌드가 성공적 일 때만이 공유를 수행하며 빌드는 다른 MAIN 지점 프로젝트뿐만 아니라 DEV 브랜치 프로젝트에도 병합 할 책임이 있으므로 최신 상태입니다.

성공적인 빌드 후에 바이너리를 공유 네트워크 위치에 복사하고 해당 네트워크 공유에서 해당 바이너리를 참조하기위한 협약을 취하는 아이디어로 주위를 둘러 보았습니다. 그러나이 과정은 현재 우리에게 유리한 작업이며 우리는 이 시점에서 변화를 싫어합니다 (지금 당장 더 중요한 일들이 일어나고 있습니다).

이것은 게시 할 때 완전하게 설명하기 어려운 것 중 하나이기 때문에 추가 질문이 있으면 기꺼이 답변 해 드리겠습니다.

우리의 솔루션은 수천 개의 프로젝트 파일과 수백만 줄의 코드로 TFS2008에서 만들어졌으며 실행 중입니다. 병합으로 인해 빌드 시간이 늘어나고 저장소에서 사용되는 공간이 늘어나지 만 지금까지 관리가 가능했습니다.

+1

해줘서 고맙습니다. 조사 할 시간이 좀 걸릴거야! –

관련 문제