Me gustaría saber
En el proyecto C # o VB.NET, debemos incluir la carpeta PACKAGE (carpeta del paquete de nugget que se crea en la raíz de mi proyecto que contiene los archivos nupkg y otro contenido) a nuestro repositorio de control de origen (Git, por ejemplo).
c#
version-control
git
vb.net
Bastien Vandamme
fuente
fuente
Respuestas:
Ha pasado mucho tiempo y NuGet ha cambiado, así que aquí hay una nueva respuesta.
NuGet ya no crea una carpeta de paquetes dentro de su estructura fuente. En cambio, hay uno en su directorio de usuarios (
%HOME%\.nuget\packages
para ser específico) donde coloca todos los paquetes que descarga y los proyectos solo hacen referencia a estos.Entonces la respuesta simple en estos días es no, no deberías. Si le preocupan los paquetes que necesita desaparecer, debe crear un espejo NuGet local del que realice una copia de seguridad por separado.
fuente
Depende.
Vea la respuesta de Bart van Ingen Schenau para determinar si es posible ignorar la
packages
carpeta.Básicamente: sí, NuGet está diseñado para que pueda ignorar la
packages
carpeta y NuGet extraerá todo de Internet si falta.¿Pero deberías ignorarlo? Yo digo: depende.
En mi opinión, se trata de "podemos seguir trabajando en caso de que el repositorio de paquetes no esté disponible" (ya sea temporal o permanentemente)
Para mis proyectos OSS personales, tengo la
packages
carpeta ignorada en todos ellos.Cuando nuget.org esté desconectado, esperaré y continuaré otro día.
Pero es algo diferente en el trabajo.
Claro, probablemente todavía tenga los paquetes localmente en alguna máquina, pero ¿está ahorrando algo de espacio cuando sus compilaciones se rompen porque su servidor de compilación no puede llegar a nuget.org?
Decidimos que el espacio es barato y no queremos la molestia, por eso estamos asignando la
packages
carpeta al control de origen.fuente
La regla básica para lo que entra en un repositorio de control de código fuente es que almacena allí todo lo relacionado con un proyecto que necesita para poder construir, probar, implementar y ejecutar el proyecto y que no puede generarse a partir de elementos ya presentes en el repositorio .
En otras palabras, si puede tirar la carpeta PACKAGE y su contenido sin afectar su capacidad, continúe trabajando en el proyecto (la compilación puede llevar más tiempo, pero no tiene que buscar e instalar nada usted mismo), entonces la carpeta puede quedar seguro fuera del repositorio.
Si la carpeta contiene paquetes de terceros que pueden tardar mucho tiempo en descargarse o que no están disponibles, entonces esa podría ser una razón para agregarlos a su repositorio de todos modos.
fuente