2009-12-07 2 views
2

다른 저장소 nunit, ninject, rhinomocks와 같은 다른 버전의 .NET을 태그 또는 하위 모듈로 저장소에 갖고 싶습니다. ProjectX은 .NET 3.0 및 NUNIT의 2.4.x에서 Projecty는 .NET 3.5 NUNIT 2.5.x의이 프로젝트 Z는 .NET 4.0B2으로 생성되고해당 버전을 설치하지 않고 .NET 버전을 사용하여 빌드 할 수 있습니까?

에게 내가 싶습니다 NUNIT의 시제품 ​​출시와 함께 만든 만들어집니다 해당 컴퓨터를 변경하지 않고 컴퓨터에서 변경을 수행 할 수 있도록하려면이 작업을 수행하십시오 (그렇지 않은 경우 최신 버전의 .NET으로 업데이트하는 등). 예를 들어 여전히 2.0 인 머신에서 3.0, 3.5 또는 4.0B2 프로젝트를 변경하려면 (내 권한이 아닐 수도 있고 관리자 권한이있을 수도 있음). 나는 체크 아웃 프로젝트,. NET의 버전 (그리고 다른 버전 라이브러리 nunit, ninject, 저장소에서 rhinomocks 등) Notepad2 또는 다른 NON 비주얼 스튜디오 편집기를 사용하여 내 변경 사항을 확인하고 싶습니다 (로 VS 설치로 필요합니다 잘 설치된 프레임 워크처럼) 빌드 스크립트를 실행하고 변경 사항을 커밋/푸시합니다. 그 일이 끝나면 체크 아웃/복제 된 디렉토리와 파일을 내가 그 머신에 없던 것처럼 삭제하십시오.

배경 : 내 리포지토리는 하나의 거대한 웹 앱/사이트가 아닌 관련없는 많은 프로젝트로 구성되어 있습니다. 외부 라이브러리의 버전을 유지해야하는 이유는 무엇입니까? 항상 모든 프로젝트를 한 번에 업데이트하고 싶지는 않습니다. 내가 그럴 경우 대본이 있습니다. 모든 개발자는 재택 근무 컨설턴트입니다. 컴퓨터에 무엇이 있는지 누가 압니까? 누가 모든 것을 신경 쓰는지 (.NET 프레임 워크 제외)는 빌드 스크립트를 통해 지적됩니다. 어쩌면 내 컴퓨터가 죽고 내 할머니를 사용해야 할 수도 있습니다. 어쩌면 나는 휴가 중이며 someones 코드가 파손되었으므로 (분명히 광산이 아님) 호텔을 사용해야합니다.

답변

3

현재 지원되는 시나리오는 아닙니다. 주어진 .NET 맛의 프로젝트를 정확하게 빌드하려면 컴퓨터에 설치된 .Net SDK (또는 경우에 따라 재 분산)가 있어야합니다. 근본적으로 .Net 프레임 워크를 소스 코드 제어로 확인하는 방법은 없습니다.

0

니트를 선택하지 않아도 빌드하지 않은 코드를 반드시 실행할 수는 없습니까? 그렇다면 나쁜 생각이 아니겠습니까?

+0

CI 서버에서 개발 한 코드를 실제로 실행 한 적이 없으며 지금까지 문제가되지 않았습니다. 나는 dev 박스에 .NET x.x가 없어야한다는 것을 알리지 않습니다. 옵션을 사용하는 것이 좋을 것이라고 말하면됩니다. 나는 컴파일, 테스트 및 커밋하기 위해 .NET 4.0B2를 설치할 필요가없는 테스트를 실행하기 위해 nunit을 '설치'할 필요가 없습니다. CI 서버에 .NET 3.5 또는 4.0B2를 설치할 수 없기 때문에 다른 모든 종속성처럼 프로젝트에 포함시킬 수 있다면 극복 할 수있는 옵션이 제한됩니다. –

+0

코드를 실행할 수없는 경우 어떻게 테스트를 실행합니까? 그것들은 .NET 코드 일뿐입니다. NUnit은 .NET 프레임 워크가 전체적으로 중요합니다. –

0

이것은 지원되지 않습니다. MSBuild는 .NET Framework 자체와 함께 제공되므로 X가 (2.0/3.5/4.0) 인 MSBuild 버전 X를 사용하여 빌드하려면 해당 .NET Framework 버전 (이상)이 필요합니다.이 건물을 수행하는 시스템에 설치되어 있습니다. .

사용 권한이 있고 다른 버전의 .NET을 실행하는 경우 릴리스 될 Lab Management 개의 Visual Studio 2010에 관심이있을 수 있습니다.

관련 문제