2013-08-09 3 views
1

여러분 모두에게 흥미로운 프로젝트 레이아웃 질문이 있습니다. 나는 이것을 처리하는 방법을 정말로 모른다. 그래서 나는 여기 누군가가 밝은 생각을 가지고 있기를 바라고있다.분할 웹 응용 프로그램 프로젝트를 관리하는 방법

기본적으로 대부분 구성 요소 파일을 제외하고는 고객 당 웹 응용 프로그램이 동일합니다. 각각의 고객 (자바 스크립트, CSS, SQL 스 니펫)마다 다른 특정 파일이 있으며,이 모든 것을 관리하는 것은 우리가 지금 설정 한 사항에 약간의 고통입니다.

현재 우리는 이러한 모든 사용자 화 된 파일을 SVN 저장소에두고 있으며 누군가가 변경되면 핵심 프로젝트 (페이지, C# 클래스, 자바 스크립트 파일, 글로벌 스타일, 이미지로 구성된 Web Forms 응용 프로그램)를 먼저 체크 아웃합니다 등)을 새 작업 디렉토리에 저장 한 다음 사용자 정의 된 파일을 체크 아웃하고 코어 프로젝트의 작업 디렉토리로 내 보냅니다. 변경 작업이 끝나면 핵심 프로젝트에서 발생한 모든 변경 사항 (버그 수정, 다른 고객이 원할 수있는 기능/변경 사항)을 커밋 한 다음 사용자 지정된 파일을 사용자 지정된 작업 디렉터리로 복사하고 커밋합니다. 말할 필요도없이, 그것은 큰 고통이고 일들이 놓치게됩니다.

필자의 최종 목표는 핵심 프로젝트 (특별한 개발 브랜치 제외) 및 고객 당 사용자 정의 된 프로젝트를위한 단일 작업 디렉토리를 갖는 것입니다. 개발자는 이러한 프로젝트를 모두 포함하는 솔루션 파일을 가지게되며, 둘 중 하나를 변경하고 커밋을 올바른 저장소로 이동합니다.

이제는 이와 같은 다중 프로젝트 솔루션을 설정할 수 있었지만 기능적으로는 무엇을해야할지 모릅니다. 핵심 프로젝트를 실행하고 모든 사용자 화 된 파일을 사용할 수 있습니까? 테스트 또는 프로덕션 서버에 어떻게 배포합니까? 부분적으로 만 사용자 정의 된 웹 구성 (예 : 연결 문자열)은 어떻게 처리합니까?

누군가 이런 식으로 일하거나 이와 같은 프로젝트를 설정하는 방법에 대한 아이디어가 있다면 크게 감사하겠습니다.

답변

0

좋아, 내 작업장에서 이전에 같은 문제가 발생했습니다. 우리는 가지를 사용하여 끝내었다.

는 하나의 디렉토리 (주)에이 개 프로젝트를 말해봐, 지금 다른 클라이언트가오고있다.

단순히 다른 디렉토리 (clientA)이 디렉토리 (주)를 분기. 이제 clientA 디렉토리에서 2 개의 프로젝트가 있어야합니다. 평소와 같이 일일 개발을 수행해야하지만 핵심 프로젝트의 변경 사항을 기본 분기에 병합하면됩니다. 작업은 웹 applicaton을하기 때문에

---Main 
    ----Core 
    ----CustomisedSkeleton 

---ClientA (branch) 
    ----Core (do merge back later) 
    ----ClientACustomised (client based code, do not do any merge in) 

한 morething는, 당신은 각 branchs '웹 프로젝트 파일을 업데이트는 로컬 IIS에 다른 URL로 바인딩을 확인해야합니다.

주요 웹 어플리케이션의 URL이, " http://yourmachine.com/main/login.aspx"입니다 말해 당신은 사용자 정의 된 지점의 웹 응용 프로그램 URL은 " http://yourmachine.com/clientA/login.aspx는"

+0

이 문제에 매우 좋은 해결책 같은 소리입니다. 나는 더 높은 업에 그것을 보여주고 그들이 말하는 것을 보게 될 것이다. 내가 그것을 한 번 업데이트 할 것입니다. 당신의 도움을 주셔서 감사합니다. – djstamp

+0

@djstamp 어떻게 됐어? 높은 수준의 모든 피드. – ValidfroM

+0

테스트 인스턴스에이 솔루션을 구현하여 효과가 있는지 알아 보았지만 지금까지는 그렇게 좋았습니다. 모든 것이 계획대로 진행된다면 나는 작업 일이 끝날 때까지이를 정확하게 표시 할 것입니다. – djstamp

관련 문제