2016-12-19 1 views
1

소스 제어의 루트에 nuget.config 파일을 사용합니다. 이 방법으로이 소스 컨트롤의 모든 솔루션은 동일한 nuget 구성을 사용하므로 nuget이 사용할 복원 된 패키지를 다운로드하는 동일한 repositoryPath를 사용하게됩니다.NuGet의 저장소 경로에 대한 네트워크 공유 선택

모두 인터넷을 통해 네트워크 공유를 nuget.config 파일의 저장소 경로로 지정하는 언급이 없습니다. 제 의견으로는 일반적으로 그렇게하는 것이 일반적입니다.

왜 개발자와 빌드 서버는 모두 nuget.org에서 nuget-package를 다운로드해야하는 지, 예를 들어 다음과 같이 단일 액세스 가능 위치를 쉽게 지정할 수 있어야합니다. \ myTfsServer \ Nuget \ RepositoryPath?

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
    <config> 
     <clear /> 
     <add key="repositoryPath" value="\\myTfsServer\Nuget\RepositoryPath" /> 
    </config> 
... 
</configuration> 

내가 분명히 놓친 것이 있습니까?

업데이트 : 나는 출처에 대해 이야기하지 않습니다. 복원이 모든 패키지를 다운로드하는 위치는 내가 말하는 것입니다. 복원 된 패키지를 체크 인하려고하지 않으므로 소스 제어 외부에서 repositoryPath를 굽히려고합니다 ...

+0

이 Nuget.config 파일 repositoryPath (예 : % APPDATA % 나를 위해 잘 작동 추가 \ NuGet \ NuGet.Config) 패키지가 솔루션 폴더 아래의 공유 폴더로 복원됩니다. 변경 사항은 새 프로젝트를 만들 때 영향을줍니다. 이전 프로젝트의 경우 참조 경로를 수정해야합니다. 문서 : https://docs.nuget.org/ndocs/consume-packages/configuring-nuget-behavior 기존 프로젝트의 참조를 업데이트합니까? 새 프로젝트를 만들면 어떻게됩니까? –

+0

""에 문제가 있습니까? 그것은 내 편이 다. –

답변

0

nuget.config 파일에는 packageSourcesactivePackageSource 섹션이 있습니다.

패키지 소스에는 알려진 모든 패키지 소스가 나열되어 있습니다. activePackageSource은 현재 활성 소스를 식별하거나 모든 소스의 집합을 나타냅니다.

는 NuGet의 repositoryPath에 대한 네트워크 공유를 사용하려면 다음과 같이 packageSourcesactivePackageSource 섹션으로 새 키를 추가해야합니다

<packageSources> 
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" /> 
    <add key="Network Share" value="\\myTfsServer\Nuget\RepositoryPath" /> 
</packageSources> 


<activePackageSource> 
    <add key="Network Share" value="\\myTfsServer\Nuget\RepositoryPath" /> 
</activePackageSource> 
+0

나는 근원에 대해서 이야기하지 않고있다. –

+0

빌드 프로젝트에서 Nuget 패키지 관리자가 솔루션 폴더 아래의 패키지를 찾으면 패키지를 찾을 수 없으면 activePackageSource 설정에서 패키지를 가져옵니다. 당신은 당신의 복원 된 패키지를 체크인 할 필요가 없으며, 패키지를 소스 제어하는 ​​것을 권장하지 않습니다. –

관련 문제