Nuget dlls desaparecidos después del check-out de git

Tengo una solución de C # que contiene diferentes proyectos. En esos proyectos, tengo algunos packages nuget normales como Newtonsoft.Json, EntityFramework, etc. Pero cuando pago mi fuente en otra máquina y la construyo, no copyrá las Dlls. enter image description here

He asignado toda la carpeta de la solución a git y puedo ver la carpeta del package y los contenidos en Bitbucket. ¿Qué hice mal?

PD: Sé que puedo ejecutar a continuación para restaurar mis packages, pero eso es un gran dolor. PSS: he buscado y visto esto y esto . Estoy buscando una manera de evitar que vuelva a suceder

nuget install packages.config 

La forma idiomática de utilizar NuGet (a diferencia de npm, por ejemplo, donde es típico cometer node_packages ) es comprometer solo su node_packages . Visual Studio detectará los packages faltantes en la carpeta packages/ y los restaurará en build, y nuget restre en la línea de command hará lo mismo.

El motivo es que los files binarys son más grandes que los files de text y no son difciles (es decir, no es posible almacenar un delta). No estoy seguro de que git funcione de la misma manera que svn, pero los autores de nuget no escriben solo para aquellos que usan git.

Si le preocupan los packages que faltan, tengo dos puntos:

  1. Nuget.org tiene bastante cuidado de que eso no sea posible. Han configurado las cosas para que los packages solo puedan borrarse por software, lo que significa que una restauración puede ver esas versiones, mientras que una nuget install no lo hará.
  2. Muchas personas ejecutan su propio server interno de packages (como Klondike) que actúa como un tipo de proxy para nuget.org. Esto también es beneficioso si desea empaquetar bibliotecas internas y distribuirlas en sus proyectos usando nuget, sin publicarlas en los internets.