2008-10-30 4 views
4

저는 조직을위한 새로운 소스 제어 베스트 프랙티스를 구축하는 중이므로 지난 며칠간 트리 수전 (TreeSurgeon)과 같은 것들에 몰입하고있었습니다.참조를 직접 소스 제어하지 않는 이유는 무엇입니까?

내가 많이 본 한 가지는 소스 제어 트리에 참조를 포함시키는 것이지만 ASP에 자연스럽게 나타나는 것과 같이 코드를 직접 사용하지 않고 별도의 디렉토리 (lib/in tree sawgeon)에 포함하는 것이 가장 좋습니다. .NET 프로젝트.

나는 bin 폴더에서 소스를 직접 제어하는 ​​것이 좋지 않은 몇 가지 이유를 알고 있지만 풀다운 후에 ASP.NET 프로젝트로 다시 가져 오는 방법을 포함하여 큰 그림을 이해하고자한다. 신선한 기계의 소스 제어 코드.

미리 감사드립니다.

브라이언

답변

6

당신은 여러 가지 이유로 별도의 폴더에 외부 종속성을 원하는 :

  • 당신이 특정 외부 의존성에 무엇이 포함되어 있는지의 명확한 이해를
  • 이 아닌 빌드를 추가 할 수 있습니다 문서 링크, 문서, 샘플 및 다른 것들을 프로젝트 오염없이 처리 할 수 ​​있습니다.
  • 여러 프로젝트간에 해당 종속성을 공유 할 수 있습니다.
  • 당신 소유하고 무엇 불분명 만들면서
  • 당신이 소스와 빌드 유물을 혼합하고 싶지 않아/당신의 팀과 무엇을 당신이이 있는지 확인하기 위해 빌드하는 동안 외부 종속성을 가지고 명시 적 단계를 갖고 싶어
  • 아니다
  • 브랜치 소스는 의존성이 여러개로 섞여 있다면 그것도 여러개의 복사본을 생성합니다.
  • 신참이 파일의 다른 버전을 우연히 검사하고 외부 의존성을 엉망으로 만들 가능성이 적습니다. 귀하의 프로젝트를 불안정하게 함

두 번째 질문에 답하십시오 :

일반적으로 외부 종속성의 복사본은 별도의 폴더에 있지만 소스 제어 아래에 있습니다. 모든 프로젝트 참조는 상대 경로를 사용하여 해당 폴더를 가리 킵니다. 따라서 사람들이 새 시스템에 등록하면 제품을 빌드 할 준비가 된 외부 종속성과 전체 소스 세트를 얻게됩니다.

또한 빌드에는 소스 트리 외부에 깨끗한 드롭 폴더를 생성하는 추가 단계가 있습니다. 이것은 배포본 복사본이며 최종 제품이 작동하는 데 필요한 .aspx와 같은 모든 소스의 모든 빌드 아티팩트 및 복사본을 포함합니다. 이를 통해 사람들은 최종 제품에 무엇이 포함되어야하는지 실제로 생각하도록 강요합니다.

+0

아주 사려 깊은 대답, 감사합니다. :) –

관련 문제