Страницы

Поиск по вопросам

понедельник, 4 февраля 2019 г.

Необходимо ли папки 'packages' в C# проекте хранить в git-репозитории проекта?

У меня есть два два проекта HelloWorld и HelloWorld.UnitTests. Во втором применив nuget я установил NUnit, в результате чего создана папка packages. Использую Visual Studio 2013.
Сейчас репозиторий выглядит так:
.\HelloWorld\ .\HelloWorld.UnitTests\ .\HelloWorld.UnitTests\packages.config .\packages\ .\HelloWorld.sln
Папка packages появилась после того как сделал активным проект HelloWorld.UnitTests и применил команду Install-Package NUget в консоли.
В Python-е, есть так называемые файлы зависимостей и можно применить команду pip install -r requirements.txt. Но в C# такого решения не нашел. Меня смущает, что видимо придется хранить множество dll-файлов, хотя логичнее было бы в репозитории хранить файл зависимостей, аналогичный python-овскому решению с requirements.txt файлом.
Правильно ли я понимаю, что мне все-таки придется эту папку хранить в репозитории проекта?


Ответ

Основной способ подключения/удаления зависимостей в проект является nuget. В папке проекта у вас должен быть файл packages.config. В нем хранятся данные об используемых в проекте nuget-пакетах. Добавлять в VCS нужно именно его. На основании содержащихся в нем данных будут скачаны необходимые пакеты. Dll'ки же включать необязательно. Пример:

Комментариев нет:

Отправить комментарий