Copie las dependencies de ensamblado de la carpeta lib que usa SVN

He estado investigando la mejor manera de almacenar nuestras soluciones en SVN y se me ocurrió una estructura de:

  • Bibliotecas
    • EntLib
    • DLL
    • Global
      • DLL
    • Subsónico
      • DLL
  • Fuente
    • sln
    • Proyecto 1
    • Proyecto 2

Las bibliotecas usan svn: externals para desplegar la versión correcta de los ensamblajes.

Mi problema es que "Global" tiene dependencies en otros ensambles. Estos están incluidos en la carpeta Global. Mi pregunta es ¿cuál es el mejor process para copyr estas DLL de dependencia en la carpeta de salida si los proyectos que utilizan "Global" no hacen reference a ellas?

Intenté simplemente hacer reference a los files y configurar CopyLocal en True pero las dependencies no se encuentran al ejecutar el código.

Esto me lleva a usar MSBuild para copyr todas las DLL en "Libraries" a la carpeta de "salida" de proyectos usando la tarea Copiar que tiene el atributo SkipUnchangedFiles , pero esto depende del tamaño del file y la timestamp para decidir si el file es más nuevo. Esto no funcionará si hay una versión diferente del file con el mismo tamaño y más antiguo. No quiero copyr todos los files cada vez que se ejecuta una compilation a less que sea absolutamente necesario .

¡Cualquier ayuda / experiencias pasadas serían increíbles!

Mis disculpas … SkipUnchangedFiles comtesting que las marcas de time sean diferentes, no porque sean más nuevas, así que esto funcionará en nuestro escenario.