в чем основное отличие 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: вывод должен быть развернут / "отправлен" - это не один" файл пакета", а каталог со всеми выводами проекта.