우리는 현재 Subversion과 TeamCity를 사용하고 있으며 Mercurial (특히 FogBugz 사용자 인 킬른)을 사용하기로하겠습니다.
분명히 이것은 개발 패턴 (우리 둘 다)에서 변화 (바람직하게 개선)를 초래할 것입니다. 그러나 내가 고민하고있는 한 가지 문제는 지속적인 통합 / CI 서버의 이점을 여전히 누릴 수 있도록 구조를 구성하는 방법입니다 ( 혜택이 존재하고 남아있을 것이라는 점에 대한 논의는 이 질문 의 범위를 벗어난다 ).
SVN을 통해 우리는 제한된 수의 중앙 리포지토리에 집중하고 있습니다. 사실상 하나의 프로젝트 (하나 이상의 Visual Studio 솔루션)로 빌드를 쉽게 트리거하고 모든 파일이 커밋되었고 그 파일이 없다는 확신을 얻습니다. 부유 한 의존성 등. 그러나 우리가 적절한 수은의 장점을 취하려면 더 많은 저장소 인스턴스를 원할 것입니다. 여기서 변경 사항이 일반적으로 결정적인 "실제"저장소로 흐를 것으로 기대합니다. 내가 어려움을 겪고있는 문제는 라이브 레포가 CI 빌드를 트리거하기에는 너무 "늦게"보인다는 것입니다. 개발자 당 프로젝트 당 하나의 CI 빌드가 너무 많을 수 있습니다 (다른 문제를 유발할 수 있음).
나는 조금 낚시를하고 있지만 그것은 중앙 서브 버전 리포지토리가 제공하는 것 중 하나 (나의 설정과 함께!)가 언제 빌드해야하는지에 대한 많은 명확성 때문이다.
nb 나는 지속적인 통합으로 수은을 사용하는 메커니즘에 대해 묻지 않고있다. 나는 개인 프로젝트, 그 패턴과 구조, 작업 실습 / 워크 플로우에 대한 대우를 받고있다.