в чем основное отличие dotnet publish от dotnet pack
Я очень рада dotnet CLI
и я прохожу разные команды. Команда, которая меня немного смущает, пытается выяснить основную разницу между dotnet pack
и publish
. Я имею в виду, глядя на их описание на этой странице:
https://docs.microsoft.com/en-us/dotnet/articles/core/tools/dotnet
как я понимаю, это pack
создает пакет while Publish
создает пакет + DLL.
это правильно? Если да, то почему бы просто не использовать publish
все время и не использовать файл DLL, если мы не хотим. Это правда?
2 ответов
dotnet pack
- создает пакет NuGet вашего кода.
это ключевое отличие - это позволит опубликовать в http://nuget.org, или на сервер nuget, который может быть снят другими разработчиками или даже для использования с Octopus Deploy.
dotnet publish
-публикует зависящее от .NET framework или автономное приложение.
Ключевое слово "автономный", возможно, установщик или папка, которая может быть производится путем копирования/вставки между хостами.
добавление к ответу @t0mm13b:
dotnet pack
: вывод представляет собой пакет, который является предназначены для повторного использования другие проекты.
dotnet publish
: вывод должен быть развернут / "отправлен" - это не один" файл пакета", а каталог со всеми выводами проекта.