VS2015 및 VS2017
TFS (온-프레미스) 또는 VSO (Visual Studio Online-Azure 호스팅 제품)와 호환
NuGet 설명서는 다음을 제공합니다. 이를 수행하는 방법에 지침을 하며 VSTS (Azure-hosted TFS)에 대해 Visual Studio 2015 및 Visual Studio 2017에서 성공적으로 수행했습니다. 모든 것이 2016 년 11 월 2016 년 8 월 현재 완전히 업데이트되었습니다 .
NuGet의 지침을 따르지만 내가 한 일을 요약하면 다음과 같습니다.
- 당신의
packages
폴더가 TFS에 커밋되지 . 그렇다면, 꺼내십시오.
- 우리가 만드는 다른 모든 것은
.sln
달리 지정되지 않는 한 파일이 존재 (NuGet의 지침은 이것에 대해 명확하지 않습니다).
.nuget
폴더를 만듭니다 . Windows 탐색기를 사용하여 다른 이름 .nuget.
으로 저장하기 위해 이름을 지정할 수 있습니다.nuget
하기 위해 이름을 .nuget
지정할 수 있지만 (마지막 기간을 자동으로 제거함) 직접 이름을 지정하려고하면 작동하지 않을 수 있습니다 (Windows 버전에 따라 오류가 발생하거나 이름이 변경 될 수 있음) ). 또는 디렉토리 이름을 nuget으로 지정하고 명령 행 프롬프트에서 상위 디렉토리를여십시오. 유형. ren nuget .nuget
- 해당 폴더 안에
NuGet.config
파일을 작성 하고 다음 내용을 추가하고 저장하십시오.
NuGet.config :
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<solution>
<add key="disableSourceControlIntegration" value="true" />
</solution>
</configuration>
.sln
폴더로 돌아가서 새 텍스트 파일을 생성하고 이름을 지정하십시오 .tfignore
(Windows 탐색기를 사용하는 경우 위와 동일한 트릭을 사용하고 이름을 지정하십시오).tfignore.
).
- 다음 내용을 해당 파일에 넣으십시오.
.tfignore :
# Ignore the NuGet packages folder in the root of the repository.
# If needed, prefix 'packages' with additional folder names if it's
# not in the same folder as .tfignore.
packages
# include package target files which may be required for msbuild,
# again prefixing the folder name as needed.
!packages/*.targets
- 이 모든 것을 저장하고 TFS에 커밋 한 다음 Visual Studio를 닫았다가 다시 열면 팀 탐색기가 더 이상 패키지 폴더를 보류중인 체크인으로 식별하지 않아야합니다.
- Windows 탐색기를 통해
.tfignore
파일과 .nuget
폴더를 모든 다양한 솔루션에 복사하여 붙여 넣은 후 커밋했으며 더 이상 packages
소스 제어 저장소에 몰래 들어 가려는 폴더 가 없습니다 !
추가 사용자 정의
내 것이 아니지만 sirkirby 의이 .tfignore
템플릿 이 유용 하다는 것을 알았 습니다. 내 대답의 예제는 Nuget packages
폴더를 다루지 만이 템플릿에는 다른 것들이 포함되어 있으며이를 더 사용자 정의하려는 경우 유용한 추가 예제가 있습니다.