Múltiples references en el repository git

Tengo 3 repositorys:

  • Solicitud
  • Lib1
  • Lib2

La aplicación necesita Lib1 y Lib2 para ejecutarse. Lib1 requiere Lib2 para compilation y reference. Recientemente agregué Lib 2 como submodule a Lib 1 y luego agregué Lib1 y Lib2 como submodules al repository de aplicaciones. Al igual que:

-Application |-submodule Lib1 | |-submodule Lib2 |-submodule Lib2 

Ahora mi problema / pregunta: Lib2 está duplicado en el repository de aplicaciones. ¿Estaba agregando el submodule Lib2 a Lib1 y Aplicación la opción correcta si quiero usar las dos bibliotecas en otro lugar (otros proyectos / repositorys)? ¿O es mejor include solo las bibliotecas en el comstackdor como una carpeta de inclusión adicional y permitir que los desarrolladores obtengan o revisen sus repositorys por su count?

Con múltiples dependencies, la mejor práctica es enumerarlas todas en un solo nivel.

Entonces la aplicación tendría Lib1 y Lib2 como una dependencia.
El hecho de que Lib1 tenga una dependencia de Lib2 se puede usar para verificar que la aplicación se refiere a la misma Lib2 que Lib1.

Pero la idea sigue siendo:

  • initialize (es decir, checkout, como en git submodule update --init ) solo submodules dentro de App (entonces no --recursive aquí)
  • Asegúrese de que Lib1 con App/lib2 , no ./Lib2 .