упаковки в NuGet-пакет Использовать NuGet для платформенной части Commons удобно, если Commons: дорабатывается нечасто дорабатывается сразу для всех проектов A Commons 1.0.0.0 NuGet B C D
1.0.0.2 NuGet B C D 1 Commons 1.0.0.0 NuGet Доработка 1 Доработка 1 Доработка 2 Доработка 2 В остальных проектах эта доработка не нужна. Пока что не нужна…
B C D A 1 Commons 1.0.0.2 NuGet Доработка 1 Доработка 2 Доработка 1 Доработка 2 1 Commons 1.0.0.0 NuGet 1 Commons 1.2.0.0 NuGet 1 Commons 1.3.0.0 NuGet Доработка X Доработка XX Доработка Y Доработка YY Доработка XX Доработка YY
| Более быстрая сборка проектов, чем при подключении общего кода в виде исходников | Надежность использования конкретной версии пакета в конкретной версии проекта | Работа с Commons как с платформой, имеющей собственный релизный цикл
проекта | При доработке проектов приходится постоянно: • подключать Commons в виде исходников • после доработки — выпускать новую версию NuGet-пакета • подключать доработанную версию пакета обратно к проекту
Commons, у нас находятся в Git | Возможность работать в проектах с исходниками Commons | Возможность применять для Commons общий с проектным Git Flow | Наглядность указания в проекте ссылки на необходимое состояние Commons | Простота настройки автоматической сборки проектов с использованием сервера CI