NuGet 패키지를 로컬 라이브러리에 복사하는 대신 중앙 위치에서 단일 복사본으로 다른 Visual Studio 솔루션 POINT를 사용할 수 있습니다. 각각의 VS solutions \ packages 디렉토리?NuGet 패키지의 중복을 피하는 방법
나는 디스크 공간이 저렴 알지만, 등 NUnit과, EF, 여러 개있는 것은 단지
NuGet 패키지를 로컬 라이브러리에 복사하는 대신 중앙 위치에서 단일 복사본으로 다른 Visual Studio 솔루션 POINT를 사용할 수 있습니다. 각각의 VS solutions \ packages 디렉토리?NuGet 패키지의 중복을 피하는 방법
나는 디스크 공간이 저렴 알지만, 등 NUnit과, EF, 여러 개있는 것은 단지
당신은 할 수 없음 낭비 보인다. http://nuget.codeplex.com/workitem/215
패키지를 업데이트하면 어떻게됩니까? 새 버전의 패키지로 모든 프로젝트를 테스트 할 예정입니까?
패키지에 심각한 변경이있는 경우 어떻게됩니까?
솔루션별로 패키지를 별도로 복사하면 한 번에 하나씩 테스트하고 업데이트 할 수 있습니다. 이것은 좋은 일입니다.
또한 대부분의 패키지는 너무 작아서 "낭비"에주의하기 위해 수천 부의 사본이 아니라면 수백 개가 필요합니다.
몇 가지 예
EF 4.3.1은 2.84MB입니다.
NUnit 2.3.012054는 795KB입니다.
Unity 2.1.505는 1.45MB입니다.
걱정하지 마세요. 그것은 당신의 시간 가치가 없습니다.
예 이것은 NuGet 2.1부터 완전히 가능합니다.
repositoryPath
구성 값을 변경하여 모든 패키지의 중심 위치를 지정하십시오 (NuGet docs).solutionDir
옵션을 제거하려면 대상 파일을 해킹하십시오.중복을 피하기 위해, 나는이 답변에 수행하는 정확히 무엇에 좀 더 자세히 갔어요 : 나는 완전히 동의하지만 https://stackoverflow.com/a/19466173/564726
가 나는 "이것에 대해 걱정 중지, 그것은 당신의 시간 가치가 없어" NuGet 패키지의 여러 버전이있는 경우 NuGet이이 버전을 모두 저장하고 개별 프로젝트의 repositories.config를 업데이트한다는 사실을 지적하고자합니다. =) –
@ J.Steen 충분히 공정하게 솔루션 레벨에서 패키지를 업데이트하면 모든 프로젝트가 업데이트됩니다. 다른 솔루션의 프로젝트에 영향을 미치지 않는다는 사실을 잊어 버렸습니다. 그러나 여러 버전이 중앙 위치에 설치되어있을 때 어떤 패키지를 사용해야하는지 혼란을 야기 할 수 있습니다. – cadrell0
확실히. 그것만으로 더 많은 두통을 겪게됩니다. =) –