¿Por qué es una mala idea iniciar git en una subcarpeta de una carpeta en la que ya he ejecutado git init?

en softwarecarpentry dicen que es una mala idea ingresar la siguiente secuencia de command:

cd # return to home directory mkdir planets # make a new directory planets cd planets # go into planets git init # make the planets directory a Git repository mkdir moons # make a sub-directory planets/moons cd moons # go into planets/moons git init # make the moons sub-directory a Git 

Por qué es una mala idea.

Porque crearías un repository nested git, que

  • será registrado por el repository principal como un gitlink ( input especial en el índice )
  • pero cuyo contenido sería ignorado

A diferencia de un submodule (que también registra un gitlink y la url del submodule en el file .gitmodules padre), un repository con un repository git nested en él no podría recuperar el contenido repo nested: todo lo que el padre tiene es un SHA1 en las inputs de su índice. No tiene la url de los repos nesteds.
Cualquiera que clone el repository padre obtendría una "carpeta vacía" para el repository git nested, sin poder encontrar a qué otro repository es esta "carpeta vacía".
Puede ver un ejemplo concreto de dicha carpeta en " Comunidad de Visual Studio 2015: ¿Comprometerse con GitHub a través de la command-line produce un file inaccesible …? "