2009-03-15 4 views
5

다른 프로젝트 (유틸리티라고 말할 수 있음)에 의존하는 일련의 프로젝트가 있습니다. 문제는 동료가 최신 코드를 사용하고 사용하기 위해 빌드해야하는 유틸리티 중 하나의 코드를 변경할 때마다 발생합니다. 최신 어셈블리. 좋은 표준 용액이 있습니까? 또는 단순히 공유 폴더에 dll을 중앙 집중식으로 만들었습니까?종속 프로젝트를 구성하는 가장 좋은 방법은 무엇입니까?

P.S :

우리는 2005 안전 MS 소스를 사용하고 나는 그들이 단지 바이너리가 아닌 코드를 필요로하는 동료가 소스 코드를 매번을 자신의 컴퓨터에 구축하고 싶지 않아요.

답변

2

그들은 유틸리티를 즉시 필요로합니까? 이것은 대개 사실이 아닙니다.

동료가 자신의 변경 사항을 병합 할 때 다음 편리한 지점에서 최신 코드를 "끌어 오게"하는 것이 좋습니다.

소스 제어 시스템을 사용하고 있습니까?

공유 서버에서 모든 사람이 복사본을 사용하도록 설정 한 경우 사용되는 동안 바이너리를 업데이트하는 데 문제가 있거나 일부 사용으로 인해 일관성없는 결과가 발생할 수 있습니다.

특정 순간에 업데이트해야 할 필요가있는 경우 (예를 들어, 일부 중앙 데이터베이스를 사용자가 진화하는 스키마에 연결하여 유틸리티가 작동하므로 데이터베이스를 업데이트하는 동시에 모든 사용자의 바이너리를 업데이트해야합니다 스키마) 그럼 나는 유틸리티를 웹 서비스로 바꾸는 것이 좋습니다. 이 작업을 수행하는 매우 쉬운 방법이 많이 있습니다. 그런 다음 동료는 대화 형 웹 페이지 인 경우 또는 명령 줄 자동화 인 경우 wget 등을 통해 웹 페이지를 통해 액세스 할 수 있습니다. wget for Windows here을 얻을 수 있습니다.

3

Subversion을 소스 제어 시스템으로 사용하는 경우 SVN Externals을 사용하면됩니다. 그런 식으로 폴더의 루트 업데이트를 할 때 자동으로 유틸리티의 새 버전을 가져옵니다. 또한 소스 제어를 읽기 전용으로 제공 할 수 있으므로 유틸리티 코드를 볼 수는 있지만 변경 사항을 적용 할 권한이 없습니다.

우리는 직장에서 이것을 사용하며 완벽하게 작동합니다. 그러나 새로운 버전을 사용하여 무언가를 깨뜨린 것처럼 업데이트를 할 때마다 유틸리티를 업데이트하고 싶지 않은 경우도 있습니다. 이것은 회사가 처리 할 수있는 방법이 있어야한다는 것입니다. 우리는 시장 버전의 유틸리티를 위해 SVN 브랜치 (또는 태그)를 가지고 있습니다. 그래서 우리가 시장을 바꾼다면 우리는 새로운 버전을 만들고 사람들은 SVN External을 원하는 경우 수동으로 새 버전을 가리 키도록 변경해야합니다.

1

많은 팀에서 어셈블리를 공유 할 때 다른 개발자가 원본에서 다시 빌드 할 필요없이 최대 개까지의 어셈블리를 참조하거나 사용할 수 있도록 bin 디렉토리로 승격합니다.

관련 문제