2008-09-25 2 views
1

현재 저는 여러 Excel VBA 기반 통합 문서를 VSTO 솔루션으로 변환하는 프로젝트를 진행하고 있습니다. 모든 워크 북은 많은 수의 클래스 라이브러리와 제 3 자 어셈블리를 공유 할 것이고 실제로 대부분의 작업은 클래스 라이브러리에서 수행됩니다. 나는 현재 내 폴더 구조를 이렇게 배치했다.공유 라이브러리가있는 여러 프로젝트/솔루션에 대한 소스 제어

Base 
    Libraries 
    Assemblies 
    Workbooks 
     Workbook1 
     Workbook2 

각 통합 문서는 고유 한 솔루션이 될 것이고 통합 문서 솔루션은 폴더 구조의 어셈블리를 참조하기 만합니다. 내 질문에 어떻게 소스 컨트롤을 배치 할 것입니다? 기지에서 저장소를 시작 하시겠습니까? 또는 각 통합 문서 솔루션의 저장소를 만드시겠습니까? 폴더를 재정렬 하시겠습니까?

이제 초기 개발을 완료 했으므로 나머지 통합 문서를 변환하는 데 도움이되는 많은 외부 개발자가 프로젝트에 참여하게 될 것입니다. 그리고 나는 그들이 확인할 수있는 아이디어가 정말 좋았습니다. 기본 디렉토리에서 모든 종속성을 사용할 준비가되었습니다. 또한 한 가지 소스 제어 저장소 아래에 20 개 이상의 솔루션/프로젝트가있는 것과 관련된 다른 문제가 있다는 점도 걱정됩니다.

나는 프로젝트에 참여하는 사람들 모두가 가능한 한 단순하게하고 싶지만 장기간의 사용성은 희생하고 싶지 않습니다. 내 마음 속에서 나는 앞뒤로 갔다. 솔루션 하나당 하나의 저장소 또는 하나의 저장소가 무엇인가?

나는 신선한 것이기 때문에, 고맙고 통찰력이있다.

추가 정보 : 현재 Mercurial을 개인적으로 사용하고 있지만, 다른 프로젝트에 대한 설득력있는 주장을하지 않는 한 프로젝트는 아마도 StarTeam으로 옮길 것입니다.

답변

1

사용중인 소스 제어에 대해 질문하지 않습니다. 외부 개발자가 나머지 저장소에 액세스하는 것을 제한해야하는 것처럼 들리지 않으므로 여러 저장소를 설정하는 데 신경 쓰지 않을 것입니다. 귀하의 코드가 저장소 크기가 문제가되지 않는 수백만 라인 크기로 실행되지 않는 한 가정합니다.

모두 개정 관리 시스템이 지원하는 기능에 따라 다릅니다. Subversion에서는 다른 폴더를 외부로 선언하고 해당 폴더의 내용에 대한 파일 URL을 제공 할 수 있습니다.이 경우 폴더 구조 내에 있더라도 해당 폴더를 별도 저장소로 처리하게됩니다.

+0

외부 링크를 사용하여 종속성의 가장 최신 버전을 얻는 방법을 사용합니다. 사람들이 디버깅을 위해 클래스 라이브러리를로드 할 수 있기를 원하기 때문에 맨 위에 저장소를 시작해야합니다. 내가하지 않았다면 외부 객체를 사용하여 의존성을 가져올 수있었습니다. –