Proyecto .NET: ¿deberían includese los files .dll y .pdb en el control de versiones?

Estoy trabajando en un proyecto .NET con Visual Studio y su extensión Git. Hasta hace poco, la carpeta bin entera se excluía del control de versión en el file .gitignore . Ahora se incluye debido a que faltan files dll que impidieron que los nuevos desarrolladores construyeran el proyecto. Sin embargo, cada vez que me comprometo ahora, dos files han cambiado: [Project name].dll y [Project name].pdb . Obviamente se generan automáticamente y me gustaría saber si es razonable excluirlos del control de versiones nuevamente. ¿Es posible que se incluya la carpeta que contiene bin ?

En realidad, no son transitorios y no deben ser controlados por la fuente.

En cambio, no está comstackndo porque tiene dependencies en las que confía. Debería get esas dependencies y moverlas a una carpeta separada y cambiar sus references para señalarlas y si tiene que verificarlas, pero preferiblemente colocaría las dependencies en un package nuget o en nuevas máquinas dev instalar xx para get el dependencies.

Revisar su carpeta de compilation es mala ya que sospecho que si alguien hizo una "limpieza" en su carpeta de compilation y la registró, cuando la siguiente persona hizo un jalón, ¡probablemente se rompería para todos como si fuera una nueva máquina de desarrollo!

ed

Según el file .gitignore recomendado, encontrado aquí

Puede ver que los files dll y pdb están excluidos. Esos files .gitignore se basan en las mejores prácticas y, de ser posible, me apegaré a esto.

Al less los PDB no deberían ir directamente al control de la fuente, pero si corresponde indexarse ​​en un server de símbolos para poder depurar las revisiones anteriores de su código.