¿Cómo se agrega automáticamente a la versión el nuevo contenido de control en un nuevo directory?

Creé un nuevo directory de fonts en la app/assets/ y agregué a la versión el directory de fonts con las fonts git add fonts .
Por lo general, cuando creo o incluyo un nuevo file en cualquier lugar de la carpeta de mi proyecto que ya esté bajo control de versión, este nuevo file se agrega automáticamente al índice y se informa mediante el git status en la sección de untracked files. Sin embargo, noté que cada nuevo file que incluyo en las fonts no se incluye automáticamente en el control de versiones. En cambio, si agrego el directory que ya contiene files, también se agregarán esos files. ¿Cómo puedo arreglar esto?
¿Existe alguna manera de crear y agregar a la versión un nuevo directory para que cada nuevo file incluido se agregue automáticamente al control de la versión también?

Cuando inicializa un repository con git init seguido de git add -A y el primer commit, crea un directory de Git que es una copy de su repository. El repository es también el directory de trabajo.
Cuando modifica files en su directory de trabajo, estos files se organizan para commit en el área de ensayo. A continuación, puede confirmar estos cambios y 'actualizar' el directory de Git.

Cuando agrega un nuevo file en el directory de trabajo, este file también es montado por Git para la confirmación en la sección 'files sin seguimiento', porque es nuevo y no hay rastro de él en el directory de Git.

Solo los nuevos files son organizados automáticamente por Git.
Los nuevos directorys vacíos son ignorados y luego eliminados por Git (ver a continuación).
Entonces, cuando agregas un nuevo directory vacío e intentas comprometerlo, Git te advierte que esa confirmación no hará ningún cambio y sugiere usar la opción --allow-empty si en cambio quieres mantener esa inútil confirmación.

En cambio, después de crear el nuevo directory, debe poner algún file en él. De hecho, generalmente para que Git mantenga un directory vacío en los directorys de trabajo y Git, es necesario agregar dentro de ese directory un file oculto vacío llamado .keep

Esta vez, las git add fonts tendrán éxito, ya que agregarán recursivamente todos los files dentro del directory de fonts al área de ensayo. La próxima confirmación almacenará esa nueva instantánea permanentemente en su directory de Git. Alternativamente, si este compromiso no es significativo, puede seguir trabajando en su directory de trabajo y cuando llegue el momento, como sugiere Carpetsmoker, haga un git add -A seguido de su commit.

Si repone su nuevo directory con files pero no agrega el .keep file oculto vacío, más adelante si elimina todos los files de fonts dentro del directory de fonts , el directory se eliminará.