es

pcpm remove

Elimina una dependencia directa.

pcpm remove es la inversa de pcpm add. Elimina una dependencia directa de CPM y de cada .csproj que la referencie.

pcpm remove <package> [options]

Qué hace

  1. Busca <package> en Directory.Packages.props. Si el paquete no está en CPM, imprime un error y sale con 1.
  2. Elimina la entrada <PackageVersion /> de Directory.Packages.props. Si ningún otro paquete en CPM referencia esta versión, la versión también se elimina.
  3. Elimina la entrada <PackageReference Include="…" /> de cada .csproj que la tenga.
  4. Ejecuta pcpm install (salta con --no-install) para actualizar pcpm.lock y refrescar el store.

Opciones

FlagEfecto
<package>El id del paquete a eliminar.
--project <path>Elimina de un .csproj específico. Repetible.
--all-projectsElimina de todos los proyectos (por defecto).
--keep-versionMantiene la entrada <PackageVersion /> aunque ningún proyecto la use.
--no-installSalta el pcpm install implícito.

Ejemplos

# Elimina Serilog de todos los proyectos
pcpm remove Serilog

# Elimina de un único proyecto
pcpm remove Serilog --project src/Api/Api.csproj

# Elimina sin actualizar el lockfile
pcpm remove Serilog --no-install

Dependencias transitivas

pcpm remove solo elimina dependencias directas. Si un paquete entra transitivamente (p. ej. Microsoft.Extensions.Logging lo requiere Microsoft.Extensions.Hosting), pcpm remove no ayuda — el paquete transitivo permanecerá en el lockfile hasta que también se elimine el padre.

Para ver quién está trayendo un paquete transitivo, usa pcpm why <pkg>.

Véase también