내 조직에는 .NET 솔루션 (C# MVC)이 있으며 우리 솔루션을 재사용 가능하게 유지하면서 동시에 확장 할 수는 없지만 약간 어려움을 겪고 있습니다.우리의 솔루션과 조언을 설계하십시오
우리는 4 클라이언트
A는, B, C, D이 각 클라이언트가 웹 사이트를 필요가 있고 각 웹 사이트는 매우 매우 유사하다 90 % 유사한 말한다. 따라서 우리는 데이터 레이어, 코어, 서비스 및 웹 레이어 (컨트롤러/헬퍼/매핑/유효성 검사 포함)를 포함하는 기본 템플릿을 만들었습니다. 모든 클라이언트는이 템플리트를 사용합니다. 클라이언트가 코드를 공유하지 않는 유일한 부분은 해당 클라이언트에 적용될 마크 업과 테마입니다. 스크립트/기본 CSS도 클라이언트간에 공유됩니다.
이것은 지금까지 7 개월 동안 비교적 잘 작동했습니다.
클라이언트 A와 B가 배포되어 프로덕션 환경에 있습니다.
우리는 현재 클라이언트 C에서 작업하고 있으며 클라이언트 D는 아직 구현되지 않았습니다.
클라이언트 C에서 작업하는 동안 클라이언트 A와 B도 버그 수정/기능 변경 등이 필요합니다. 그러나 클라이언트 C에서 작업하기 때문에 항상 템플릿이 "프로덕션 준비"상태가 아니므로 코드는 클라이언트 A와 클라이언트에 대해 릴리스됩니다. B와 테스트되지 않은 코드. 우리는 이제 클라이언트 C에 직접 기능을 구현하여 템플릿을 변경하지 않도록했습니다.
물론 간단한 옵션은 브랜치를 분기하고 작업하는 것이지만 TFS를 사용해야하므로이 작업이 어려워집니다. 대부분 우리가 거기서부터 일할 것이지만 다른 사람들이이 문제를 어떻게 해결하는지에 대한 추가 조언 (정보원)이 있습니다.