[Nuget] 손상된 Reference, Package 복원하기
2014. 3. 24. 10:43ㆍOthers
Nuget을 통해서 의존성있는 Package를 손쉽게 관리할 수 있습니다. 하지만 이렇게 Nuget을 통해서 추가된 Packages는 개발자에 의해서 쉽게 변경되거나 삭제, 손상될 수 있습니다.
예를 들어서 Nuget에 의해 추가된 Reference를 지워버린다거나, 패키지 구성파일을 실수로 삭제한 경우도 있을 수 있습니다. 이럴 때를 위해 Nuget에서는 다음과 같은 복구방법을 제공하고 있습니다.
- 일단 작업을 시작하기 전에, 프로젝트를 백업합니다. 혹시라도 작업 중에 문제가 발생해도 복구하기 위함입니다.
- Nuget은 복원 작업 중에 캐시된 파일을 재사용하게 되는데, 확실하게 재설치를 하고자 한다면 프로젝트의 bin, obj 폴더를 삭제하고, Solution파일(.sln)이 있는 폴더에 위치한 packages 폴더도 삭제하시면 됩니다.
[Nuget은 다운로드 Package파일을 Solution 파일이 위치한 경로에 pakcages라는 폴더를 만들어 저장해두고 재사용합니다.] - Visual Studio의 메뉴에서 [TOOLS]-[Nuget Package Manager]-[Package Manager Console]을 클릭합니다.
- 다음과 같이 명령어를 입력합니다. 그러면 Nuget은 packages.config에 등록된 해당 패키지를 찾아 복구작업을 진행합니다. 만약 전체 패키지를 복구대상으로 삼고 싶으시다면 ‘패키지명’을 생략하시면 됩니다. update-package -reinstall 패키지명위 명령을 실행하면 Nuget은 다음과 같은 작업을 진행하게 됩니다.
- package.config에 명시된 동일버전의 패키지와 의존성 있는 패키지를 프로젝트로부터 제거합니다.
- package.config에 명시된 동일버전의 패키지와 의존성 있는 패키지를 다시 다운로드 합니다.
- 해당 패키지에 필요한 모든 파일, 폴더, Reference관계를 복원합니다.
'Others' 카테고리의 다른 글
Hyper-v 네트워크 설정하기 (2) | 2015.12.25 |
---|---|
[IDE] VisualStudio 2012에 ASP.NET MVC 5 설치하기 (0) | 2014.03.28 |
Chart의 유형: 정보전달에 있어 최선의 차트를 선택하기 (0) | 2014.03.19 |
[Web] IE에서 유튜브 '__flash__removeCallback' 오류 (0) | 2013.08.14 |
[IDE] TF31003: TFS+VisualStudio2012 (0) | 2013.08.14 |